2014-04-18 2 views
0

테스트에 사용되는 내 서버와 프로덕션에 사용되는 다른 서버에이 URL이 있습니다. 내 코드의 어느 시점에서app가 ad hoc 인 경우 감지

나는 이런 짓을 :

#ifdef DEBUG 
    static NSString * const url = "http://sandbox.myserver.com"; 
#else 
    static NSString * const url = "http://live.myserver.com"; 
#endif 

내가 엑스 코드에서 응용 프로그램을 디버깅하고 때 잘 작동하지만 베타 테스터에 내 응용 프로그램의 임시 버전을 보낼 경우는 실패합니다. Ad Hoc 앱은 샌드 박스 대신 프로덕션 URL을 사용합니다.

이 테스트를 수행하는 올바른 방법은 무엇입니까? 짧은

답변

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; 
} 
+0

감사합니다 !!!!!!!!! – SpaceDog