2013-05-17 47 views
0

請不要將此標記爲重複。這個問題是關於Simperium以及它處理uniqueIdentifier和identifierForVendor的方式。UniqueIdentifier現在引起Apple拒絕

Simperium在Simperium.m中仍然使用 [[UIDevice currentDevice] uniqueIdentifier] 。這已被棄用,Apple現在完全拒絕使用該通話的應用。

我正在試驗 [[[UIDevice] currentDevice] identifierForVendor] UUIDString]; 但我不確定是否會有這樣做的問題。

你說什麼?

最佳,

+0

議定重:重複。由於我無法發表答案,Simperium的觀點認爲這種方法沒有問題。在開發分支中也應用了一個備用修補程序(您可以看到此問題以供參考:https://github.com/Simperium/simperium-ios/issues/60)。 – mikejohnstn

回答

0

它應該工作使用,後來所以沒有問題。因爲他們說

「雖然你可能已經刪除了您的應用程序的UDID的訪問和使用, 無效的二進制消息表明您的應用程序使用或訪問 的UDID,請檢查您的源代碼, 出現的任何「uniqueIdentifier」方法;這是返回設備的 UDID的方法。「

所以只能用「uniqueIdentifier」的方法。

感謝

0

您也可以使用此方法獲取的唯一標識符爲您的應用程序。

- (NSString *)createUUID{ 

NSString *uIdentifier = [[NSUserDefaults standardUserDefaults] objectForKey:@"Unique identifier for test"]; 

if (!uIdentifier) { 

    CFUUIDRef uuidRef = CFUUIDCreate(NULL); 

    CFStringRef uuidStringRef = CFUUIDCreateString(NULL, uuidRef); 

    CFRelease(uuidRef); 

    uIdentifier = [NSString stringWithString:(NSString *)CFBridgingRelease(uuidStringRef)]; 

    [[NSUserDefaults standardUserDefaults] setObject:uIdentifier forKey:@"Unique identifier for test"]; 

    [[NSUserDefaults standardUserDefaults] synchronize]; 

} 

return uIdentifier; 

}