我们为 iOS应用程序使用生产和开发的单独数据库,我们正在通过TestFlight进行测试。 问题是TestFlight在发布模式下分发应用程序。
如何配置项目以便在开发模式下分发应用程序?
或者我应该为发布和开发实际设置不同的构建标识符,然后在TestFlight中有两个应用程序?
通常做什么?
答案 0 :(得分:1)
解决方案摘要
我建议你在构建设置中添加一个值。只有在构建生产版本时才将其设置为PRODUCTION
。
只需使用#if
语句检查PRODUCTION
是否已设置
在我的应用中(我使用批量进行推送通知)
我有两个版本的同一个应用程序。一个免费广告,一个免费广告。 我只是在免费版本中设置如下:
付费版本就像这样:
最后我在code =]
中使用它 // MARK: Batch.
#if FREE
#if DEBUG
print("Batch FREE - DEBUG mode")
Batch.start(withAPIKey: "-MY FREE VERSION DEBUG KEY-") // dev
#elseif RELEASE
print("Batch FREE - RELEASE mode")
Batch.start(withAPIKey: "-MY FREE VERSION RELEASE KEY-") // live
#endif
#elseif PAID
#if DEBUG
print("Batch PAID - DEBUG mode")
Batch.start(withAPIKey: "-MY PAID VERSION DEBUG KEY-") // dev
#elseif RELEASE
print("Batch PAID - RELEASE mode")
Batch.start(withAPIKey: "-MY PAID VERSION RELEASE KEY-") // live
#endif
#endif
// Register for push notifications
BatchPush.registerForRemoteNotifications()
在您的情况下,它将是手动到期的。
仅在构建生产时在PRODUCTION
中设置Active Compilation Conditions
。
然后添加此代码:
#if PRODUCTION
// Connect to production database
#else
// Connect to test database
#endif