私のアプリケーションでは、すべてのユーザーが一意のIDを作成したいと思っています。私はusers.soの一意のIDを作成するために使用されるGUIDについて聞いたGUID?ありがとうございます。iphone:ユーザーを識別するための一意のIDの作成方法
2
A
答えて
2
[[UIDevice currentDevice] uniqueIdentifier]
あなたのiPhoneの一意のIDを返します。
あなたは、いくつかのUUIDを作成する必要がある場合は、ちょうどこのメソッドを使用します。
+ (NSString *)GetUUID
{
CFUUIDRef theUUID = CFUUIDCreate(NULL);
CFStringRef string = CFUUIDCreateString(NULL, theUUID);
CFRelease(theUUID);
return [(NSString *)string autorelease];
}
注:ユーザーがアンインストールし、アプリを再インストールする場合CFUUIDCreateによって作成されたUUIDが一意である:あなたが取得しますが毎回新しいもの。また、UUIDが
1
UUIDはiOSの5に廃止されましたが、あなたは常にMACが
0
Maulikが示唆されているようにもう一つの解決策と同じアドレスを使用することができます...
のiOS 5で廃止され
これは一意のファイル名を作成することについてですが、これはユニークである必要があるものに適用できます。
NSString *filePath;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
path = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"SomeDirectoryName"];
//Create unique filename
CFUUIDRef newUniqueId = CFUUIDCreate(kCFAllocatorDefault);
CFStringRef newUniqueIdString = CFUUIDCreateString(kCFAllocatorDefault, newUniqueId);
path = [path stringByAppendingPathComponent:(NSString *)newUniqueIdString];
path = [path stringByAppendingPathExtension: @"MOV"];
CFRelease(newUniqueId);
CFRelease(newUniqueIdString);
0
これは、ユーザーについて尋ねているので多少話題にはなりませんが、固有のデバイス(指紋)には何かが必要な場合もあります。 Keychain Services Referenceと、kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly
、およびkSecAttrAccessibleWhenUnlockedThisDeviceOnly
の3つのkSecAttrAccessible
の定数を見てください。
アップルがデバイスに結合された値を生成すると仮定すると、定数はコピー/ペースト攻撃を阻止するのに役立ちます([[UIDevice currentDevice] uniqueIdentifier]
と同様)。しかし、私は実際にその行動を確認したことはありません。
関連する問題
- 1. iphoneコアデータ内のエンティティの一意の識別子を作成する方法
- 2. 生涯一意のIDを作成する別の方法
- 3. 一意のIDを持つ各リモートコンピュータを識別する方法
- 4. スマートフォンハンドセットを一意に識別、追跡、ロックするためのネイティブアプリの作成
- 5. MYSQLで一意の識別子フィールドを持つテーブルを作成する方法
- 6. タイプを一意に識別するための最良の方法
- 7. iOSデバイスの一意の識別子を作成しますか?
- 8. iPhone StoreKitで作業中にユーザーを識別する方法
- 9. djangoシグナル。一意のディスパッチIDを作成する方法は?
- 10. 関数の一意の識別子を取得する方法
- 11. ディレクトリ内の一意のファイルを識別する方法は?
- 12. asp.netの一意の識別子パラメータを処理する方法
- 13. SQLを使用して一意の識別子を作成
- 14. jvmtiのスレッドを一意に識別する方法
- 15. コンピュータ上のOSを一意に識別する方法は?
- 16. 一意のJVM識別子を取得する方法は?
- 17. アンドロイドデバイスの一意の識別子を見つける方法は?
- 18. Javaで固定長の一意識別子を生成する方法は?
- 19. 一意のフォルダ識別子
- 20. アクセストークンにユーザーIDを追加するためのIdentityServerの作成方法
- 21. 許可されたユーザーの一意のトークン(ID)を取得する方法は?
- 22. sugarcrmのモジュールで一意のIDフィールドを生成する方法
- 23. MongoDBで一意のユーザーIDのシーケンスを格納するための自動インクリメント
- 24. ジェスチャーを認識/識別するための簡単な方法
- 25. Pharo/Squeakでトランスクリプトウィンドウを一意に識別する方法は?
- 26. 接続を一意に識別する方法は?
- 27. コンピュータプログラムを一意に識別する方法は?
- 28. ウェブ(PHP)アプリケーションでクライアントを一意に識別する方法
- 29. Chrome AppでChromeOSデバイスを一意に識別する方法
- 30. iOS:Three20:TTTableItemデリゲート:tableItemを一意に識別する方法は?
iOS5のオプションは何ですか? – Developer
Xスラッシュが言及しているように、お使いのデバイスのMACアドレスを使用することができます! – Maulik