Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c iOS 10如何检查应用程序是从AppStore还是从Objective C中的Xcode下载的_Objective C_Iphone_Xcode8_Ios10 - Fatal编程技术网

Objective c iOS 10如何检查应用程序是从AppStore还是从Objective C中的Xcode下载的

Objective c iOS 10如何检查应用程序是从AppStore还是从Objective C中的Xcode下载的,objective-c,iphone,xcode8,ios10,Objective C,Iphone,Xcode8,Ios10,我想检查应用程序是从AppStore还是从Xcode(调试模式)下载的。在iOS9或更低版本中,我的代码工作正常,但在iOS10中它不支持 BOOL isAppFromAppStore; if ([NSData dataWithContentsOfURL:[NSBundle mainBundle].appStoreReceiptURL] != nil) { isAppFromAppStore = YES; } else {

我想检查应用程序是从AppStore还是从Xcode(调试模式)下载的。在iOS9或更低版本中,我的代码工作正常,但在iOS10中它不支持

BOOL isAppFromAppStore;
      if ([NSData dataWithContentsOfURL:[NSBundle mainBundle].appStoreReceiptURL] != nil) {
            isAppFromAppStore = YES;
        } else {
            isAppFromAppStore = NO;
        }
    if (isAppFromAppStore) {
    NSLog(@"App is downloaded from AppStore");
    } else {
    NSLog(@"App is in Debug mode");
    }

有人能帮我解决这个问题吗?我的代码在iOS9或更低版本上运行良好,但在iOS10上运行不好。

在您的构建设置或xcconfig中添加一个“定义到GCC#U预处理器#U定义”,对应用商店构建和本地构建使用不同的值

默认情况下,Xcode提供一个
DEBUG
宏,可用于检查当前是否处于调试或发布版本中。假设您在本地使用调试版本并向应用商店提交发布版本,您应该能够检查
if(debug){…}
;这足以满足你的需要吗?(另见)