我的应用程序可以从Appstore安装,也可以通过企业分发安装
代码完全相同。
那么,如果从Appstore安装了Application,那么我如何以编程方式区别?
答案 0 :(得分:6)
您可以通过从应用程序包中读取embedded.mobileprovision文件来获取部分内容:
NSString *provisionPath = [[NSBundle mainBundle] pathForResource:@"embedded" ofType:@"mobileprovision"];
if (![[NSFileManager defaultManager] fileExistsAtPath:provisionPath]) {
// Appstore version
}
如果不存在,您将进入应用商店版本。
如果它确实存在,您需要找出调试和临时供应配置文件之间的一些差异,并寻找它以确定您所在的构建。
关于/ private / var / mobile / Containers / Bundle / Application /
这是一种安全的方式,您可以查看[[NSBundle mainBundle] resourcePath]
,
这是加载图像和资源的路径,
它以/ private / var / mobile / Containers / Bundle / Application / ...
因此,阅读/检查您的捆绑文件不会导致拒绝。
答案 1 :(得分:0)
不,你无法识别出来。如果您已将凭据分享给其他任何人,并且如果他已使用它下载了应用程序,则无法检查相同的内容。