You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Swift/Objective-C代码检测Xcode中StoreKit测试选项是否启用?

检测Xcode StoreKit测试选项是否启用的方法

编译期检测

你可以给启用StoreKit测试的Scheme配置单独添加预编译宏:打开Scheme的Build Settings,找到Preprocessor Macros,给对应配置添加STOREKIT_TEST_ENABLED=1。之后就能在代码里直接判断:

Swift 实现

#if STOREKIT_TEST_ENABLED
print("StoreKit测试已启用(编译期检测)")
#else
print("StoreKit测试未启用(编译期检测)")
#endif

Objective-C 实现

#ifdef STOREKIT_TEST_ENABLED
NSLog(@"StoreKit测试已启用(编译期检测)");
#else
NSLog(@"StoreKit测试未启用(编译期检测)");
#endif

运行期检测

苹果没有提供直接读取Scheme配置的API,但可以通过Xcode注入的环境变量间接判断:

Swift 实现

if ProcessInfo.processInfo.environment["XCODE_STOREKIT_TESTING_ENABLED"] != nil {
    print("StoreKit测试已启用(运行期检测)")
} else {
    print("StoreKit测试未启用(运行期检测)")
}

Objective-C 实现

if ([[[NSProcessInfo processInfo] environment] objectForKey:@"XCODE_STOREKIT_TESTING_ENABLED"]) {
    NSLog(@"StoreKit测试已启用(运行期检测)");
} else {
    NSLog(@"StoreKit测试未启用(运行期检测)");
}

补充:这个环境变量是Xcode内部使用的,后续可能存在变动,建议和编译期宏的方式结合使用,结果更稳妥。

内容的提问来源于stack exchange,提问作者Alfonso Tesauro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 16:18:18