hp *_*der 2 xcode objective-c ios
我在我的代码中写了这些行:
CFUUIDRef identifier = CFUUIDCreate(NULL);
NSString *identifierString = (NSString*)CFUUIDCreateString(NULL, identifier);
NSLog(@"%@",identifierString);
[self setValue:identifierString forKey:kParamNameDeviceId];
Run Code Online (Sandbox Code Playgroud)
但是每次应用程序启动时都会调用这些行.
现在我的问题是,如何实现以下目标?
简而言之,我希望在应用程序的整个生命周期中创建一个CFUUID并使用它(直到它被卸载).
最简单的方法是将其存储在NSUserDefaults中
NSString *identifierString = [[NSUserDefaults standardUserDefaults] objectForKey:@"myID"];
if (!identifierString) {
CFUUIDRef identifier = CFUUIDCreate(NULL);
identifierString = (NSString*)CFUUIDCreateString(NULL, identifier);
[[NSUserDefaults standardUserDefaults] setObject:identifierString forKey:@"myID"];
}
NSLog(@"%@",identifierString);
/* ... */
Run Code Online (Sandbox Code Playgroud)
创建一次.在NSUSerDefaults中添加它并检查在创建UUID之前是否已存储UUID.简单的伪代码,
NSString *CFUUID = nil;
if (![[NSUserDefaults standardUserDefaults] objectForKey:@"UUID"]) {
//create CFUUDID.
[[NSUserDefaults standardUserDefaults] setObject:CFUUID forKey:@"UUID"];
}
else
{
CFUUID = [[NSUserDefaults standardUserDefaults] objectForKey:@"UUID"];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1816 次 |
| 最近记录: |