自从苹果禁用了设备的唯一编号之后, 程序员各路大神们, 纷纷从各个方面想出了想出了各种解决方案, 在此不再一一列举, 仅在此分享鄙人比较常用的方法: 第一次运行App时, 向设备的"钥匙串"中写入产生的UUID码, 以后每次需要使用时, 就直接从"钥匙串"中读取, 这样就可以实现, 每台设备唯一, App卸载重新安装后保持不变.
//
// DevicesKeyChain.h
// KeyChain
//
// Created by MacroHong on 15/7/6.
// Copyright (c) 2015年 MacroHong. All rights reserved.
//
/*!
* 模拟产生一个设备号
* 一台设备唯一
* APP删除再安装,设备号仍然不变
*/
#import <Foundation/Foundation.h>
// 定义服务名,以及应用名//****需修改******
#define SERVIVENAME @"blog.csdn.net" // 通常取公司的官网
#define KEYNAME @"DevicesKeyChain" // App的包名
/*!
* @author Macro QQ:778165728, 15-07-06
*
* @brief 产生设备码(一台设备唯一)
*/
@interface DevicesKeyChain : NSObject
/*!
* @author Macro QQ:778165728, 15-07-06
*
* @brief 类方法,获取唯一的设备标识符
*
* @return 设备标识的字符串
*/
+ (NSString *)DevicesKeyChain;
/*!
* @author Macro QQ:778165728, 15-07-06
*
* @brief 删除
*/
//测试用
//+ (void)DeleteDevicesKeyChain;
//+ (NSString *)createUuidStr;
@end
使用时, 只需要把以上.h文件中的
SERVIVENAME和
KEYNAME这两个宏改成你自己应用中的对应值即可. 获取时只需要调用唯一的类接口即可. so easy......