電話からNSString形式でdeviceUUIDを取得する必要があります。今私はこれを持っています:
NSString *deviceId = [UIDevice currentDevice].identifierForVendor;
私が以前持っていたものだから、それは:
NSString *deviceId = [UIDevice currentDevice].uniqueIdentifier;
エラーが発生しました。
しかし、最初の文で、私は警告を受けました:
Incompatible pointer types initializing 'NSString *' with an expression of type 'NSUUID *'
エラーが示すように、 identifierForVendor
はNSStringではなく、クラス NSUUID
のオブジェクトを返します。
NSStringが必要な場合は、これを使用します。
NSUUID *identifierForVendor = [[UIDevice currentDevice] identifierForVendor];
NSString *deviceId = [identifierForVendor UUIDString];
NSUUIDをNSStringに変換する方法をお探しの方
ObjC
NSString *uuid = [[NSUUID UUID] UUIDString];
Swift
NSUUID().UUIDString
スウィフト3
UUID().uuidString
EDITE: As OP's要件削除した回答を再度開き、ここで言及します@ Matthias's正解です。次のコードを使用すると、このコードを実行するたびに新しいdevice_idが取得されます。
次のコードを使用します。
CFUUIDRef uuidRef = CFUUIDCreate(kCFAllocatorDefault);
NSString *uuidString = (NSString *)CFBridgingRelease(CFUUIDCreateString(NULL,uuidRef));
CFRelease(uuidRef);
NSLog(@"%@", uuidString);