一意のデバイスIDを読み取るための次のコードがあります。これは20以上の異なるビュー(.mファイル)で使用されるので、これを行うためのクリーンで効率的な方法があるかどうか疑問に思っています。だから私は3つのオプションを考え出します:
オプション1:これらのコードを実行する必要がある場所にコピー/貼り付けするだけです。これはこれを行うための最悪の方法だと思います。
オプション2:AppDelegate.mに配置します。これにより、これらは起動ごとに1回だけ実行されます(私が正しければ、わずかな時間を節約できる可能性があります)。次に、必要なときにいつでも文字列「stringDeviceID」を呼び出します。
オプション3:別のクラスを作成し、これらのコードをクラス関数に取り込みます。ただし、これには、毎回コードを実行するという「問題」があります。
そして私の質問は、私が行かなければならない最良/より良いオプションはどれですか?そして、これらのどれよりもさらに良い別のオプションがある場合は、私に知らせてください。前もって感謝します。
NSString *stringDeviceID;
if ([UIDevice instancesRespondToSelector:@selector(identifierForVendor)])
{
stringDeviceID = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
}
else
{
stringDeviceID = [[UIDevice currentDevice] uniqueIdentifier];
}