iPhone - 我如何在运行时检测设备是否在使用我应用的adhoc版本

6

当我运行我的应用程序时,我希望在 adhoc 部署与 App Store 部署时使用不同的 API。是否可以在运行时找到这个信息?

我知道我可以使用 #if TARGET_IPHONE_SIMULATOR 和 #if DEBUG 来运行 Xcode,但我希望也能检测 adhoc 部署。有什么建议吗?

2个回答

3

检查在你的NSDocumentDirectory目录下是否存在"../iTunesMetadata.plist"。

这个文件只存在于应用商店版本中,而且它位于你的应用程序根目录下,所以提交到应用商店是安全的。


似乎对于即席构建也是存在的。我正在使用TestFlight;也许TestFlight添加元数据以便在下载应用程序时获得漂亮的图标。 - Nick Farina

1
在构建设置中为您的AdHoc配置添加预处理器宏。#if ADHOC // 做一些事情


1
那样做可以运行,但不符合在运行时执行的要求 :) - Maria Zverina
@Brett 我不知道是否可以通过编程方式找到应用程序是使用AdHoc证书还是Debug证书签名的。这种方法可能有效 - 如果您可以读取嵌入在App捆绑包中的embedded.mobileprovision并查找您的配置文件名称。 - 0x8badf00d
这就是正确的答案。如果定义了 ADHOC,只需更改变量并在运行时检测变量值即可。 - EPage_Ed

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接