0

こんにちは StackOverflow メンバー :) Web サービスを呼び出して、アプリのユーザーを認証するために UDID 番号を送信することは可能でしょうか?

私のデータベースでは、UDID を主キーとして使用し、このキーを参照して使用可能なクレジット数を取得します。

それはAppleによって許可されていますか?もしそうなら、どうすればUDIDをプログラムで取得できますか?

4

1 に答える 1

3

シリアル番号を取得することは可能ですが、UDID を使用することはお勧めできません。

シリアル番号については、このコードを使用できます

- (NSString*)getSerialNumber
{
    CFTypeRef serialNumberAsCFString;
    io_service_t platformExpert = IOServiceGetMatchingService(
        kIOMasterPortDefault, IOServiceMatching("IOPlatformExpertDevice"));
    if (platformExpert)
        {
            serialNumberAsCFString = IORegistryEntryCreateCFProperty(
                platformExpert, CFSTR(kIOPlatformSerialNumberKey), 
                kCFAllocatorDefault, 0);
        }
    IOObjectRelease(platformExpert);
    NSString *serial = 
        [[NSString alloc] initWithFormat:@"%@",serialNumberAsCFString];
    return serial;
}

コードの参照

ただし、UDID を取得するためにこのコード行を試すことはできますが、必要な結果が得られるかどうかはわかりません。Apple はアプリを拒否する可能性があり、この UDID 機能は iOS の新しいバージョンでは廃止されています。

NSString *uid;
uid= [[UIDevice currentDevice] uniqueIdentifier];
NSLog(@"udid is %@",uid);
于 2013-03-07T21:18:19.797 に答える