我的服务器中有用于测试的URL和另一个用于生产的URL。
在我的代码的某些时候,我做到了这一点:
#ifdef DEBUG
static NSString * const url = "http://sandbox.myserver.com";
#else
static NSString * const url = "http://live.myserver.com";
#endif
这在我在Xcode上调试应用程序时工作正常,但如果我将我的应用程序的临时版本发送给beta测试人员,它将失败。临时应用程序将使用生产URL而不是沙箱。
进行此测试的正确方法是什么?
答案 0 :(得分:1)
简而言之:
var data = String($.NSString.stringWithContentsOfFileEncodingError($.NSBundle.mainBundle.pathForResourceOfType('embedded', 'mobileprovision'), $.NSISOLatin1StringEncoding, null));
data = data.slice(data.indexOf('<plist'));
data = data.slice(0, data.indexOf('</plist>')+8);
data = $.NSString.stringWithString(data).dataUsingEncoding($.NSISOLatin1StringEncoding);
var mobileProvision = $.NSPropertyListSerialization.propertyListWithDataOptionsFormatError(data, $.NSPropertyListImmutable, null, null);
if (mobileProvision.valueForKey('ProvisionedDevices')) {
res.debug = 'adhoc';
} else {
res.debug = false;
}