iphone - 检测 iOS 应用的 AppStore 安装

标签 iphone ios objective-c app-store detection

我需要在我的应用中实现自定义日志记录。

为此,我需要检测应用程序的当前版本是从应用商店安装的,还是从 xcode 运行的,或者是 TestFlight 版本。

根据安装源的不同,应用程序有什么不同吗?

我不想在开发环境中有不同的东西。

最佳答案

您可以通过从应用程序包中读取 embedded.mobileprovision 文件来完成部分工作:

NSString *provisionPath = [[NSBundle mainBundle] pathForResource:@"embedded" ofType:@"mobileprovision"];

如果不存在,则说明您在应用商店构建中。

如果它确实存在,您需要找出调试和临时配置文件之间的一些差异,并寻找它以确定您所在的构建。

因为 XCode 会自动在调试配置中设置带有“DEBUG”标志的应用程序,而在 Release 中没有设置(默认情况下用于 AdHoc 构建),您最好在应用商店构建中禁用日志记录,并且根据 DEBUG 宏标志确定日志级别。

关于iphone - 检测 iOS 应用的 AppStore 安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16087779/

相关文章:

ios - 点击电子邮件中的网站 URL 时打开应用程序

iphone - 为什么 UIViewController 的 View 属性会在每次访问时增加 retainCount?

iphone - cocoa touch -- 测试对象是否是 objective-C 对象

ios - 带有点击事件的 UITapGestureRecognizer

ios - 我如何在 ARSKView 中创建暂停菜单?

ios - NSNotification Center只能在第二次工作吗? TabbarController 到 NavigationController

iphone - 我们可以对多个 ios (ipad/iphone) 应用程序使用相同的图标吗?

iphone - 仅具有核心动画的 FlipBoard

ios - 在没有动画效果的avplayerlayer上设置videogravity

ios - 以编程方式设置 EKEvent 标题