0

私はこの質問が以前に尋ねられたことを知っていますが、それについていくつかの不明確/未解決の問題といくつかの更新があることがわかりました、そして私は私と他の人のために注文したいと思いました。

サーバーがそれを識別できるように、アプリごとに一意のIDを持っている必要があるため、以前はこれを持っていましUDIDdeprecate

私はそれを行う他の4つの方法を見つけましたが、それらについていくつかの問題があり、リスクを冒したくありません。

  1. NSString *UD= [UIDevice currentDevice].identifierForVendor.UUIDString ;

私はここで、この番号を作成するときに0000を取得できる場合があることを読みました-アップルには、iOSをオンエアで更新する人のためのバグがあるためです。(アップルはそれを確認しました)別のこと-ありますadvertisingIdentifier-それはより良いですか?

2.2。

CFUUIDRef uuidObject = CFUUIDCreate(kCFAllocatorDefault);
NSString *uuidStr = ( NSString *)CFUUIDCreateString(kCFAllocatorDefault, uuidObject);

このようにして、一意のIDを作成してください。そうすれば、それを保存してNSUserDefaults使用することができます。しかし、彼のアプリを消去すると、問題が発生します。また、これは6歳未満の他のiOSでもいくつかの問題があると聞きましたか?

私が読んだサードパーティのクラスの3 MAC adress-iOSの互換性の問題もあります、

それで、一番下の行で、すべてのiOSで常に機能しているIDを取得する一般的な方法はありますか?

4

1 に答える 1

0

たくさんの調査の結果、これを行うための最良の方法を提供するいくつかの組み合わせを見つけたと思います。私が間違っている場合は私を訂正してください。

方法2を使用して、is greatを使用してuniqueIDを作成しますが、アンインストールすると消去さCFUUIDRefれるため、に保存することはできません。NSUserdefaults

だから、私たちはそれをキーチェーンに保存し、永遠にそこに置くことができます、のようなもの:

SFHFKeychainUtils storeUserName: andPassword: forServiceName:
于 2013-03-25T08:16:37.400 に答える