解决方法如下:
通过调用CFFUUIDCreate函数来生成机器唯一标识符,但每次调用以下函数返回的字符串都不一样,所以第一次调用后需把该字符串存储起来。
具体到cocos2d下,需要修改两处警告如下
1:修改libs->cocoslive->CLScoreServerPost.m文件,132行
//[self addValue:[[UIDevice currentDevice] uniqueIdentifier] key:@"cc_device_id"];//注释此行,替换为以下行
CFUUIDRef unique =CFUUIDCreate(kCFAllocatorDefault);
NSString *device = [(NSString *)CFUUIDCreateString(kCFAllocatorDefault, unique)autorelease];
CFRelease(unique);
[selfaddValue:devicekey:@"cc_device_id"];
2:修改libs->cocoslive->CLScoreServerRequest.m文件,82行
//device = [[UIDevice currentDevice] uniqueIdentifier]; //注释此行,替换为以下行
{
CFUUIDRef unique =CFUUIDCreate(kCFAllocatorDefault);
device = [(NSString *)CFUUIDCreateString(kCFAllocatorDefault, unique)autorelease];
CFRelease(unique);
}
除了以上方法,也可以使用mac地址作为唯一标示的方式,注意mac地址保密,可用md5加密mac。