iOS中判断是否首次下载app

来源:互联网 发布:deepin linux 下载 编辑:程序博客网 时间:2024/04/28 02:30

//判断是否首次下载

在程序启动的时候app delegate 中先判断

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    

BOOL isFirst=[[NSUserDefaultsstandardUserDefaultsboolForKey:@"firstDownload"];

    if(!isFirst){//如果不存在,则是第一次下载

        NSLog(@"第一次下载");

        [[NSUserDefaultsstandardUserDefaultssetBool:YESforKey:@"firstDownLoad"];

//执行相应的操作,如第一次下载发红包,给优惠券等

    }else {

        NSLog(@"不是第一次下载");

    }

   

    returnYES;

}

//这个是用本地偏好设置存储的,会存在一个问题,如果应用删除了,又重新下载,(当iCloud不存储时)会清除缓存。吧数据保存到服务器,根据手机唯一的标志,保存;下次登陆的时候从服务器取出判断;


手机标识的方法:1.钥匙串保存(不存app的删除要消失,一直在电脑中);


1.钥匙串KeyChian 是保存在沙盒之外的存储数据,相当于Dictionary, 所有应用都可以获取和保存,因此当一个软件卸载之后完全不影响里面的数据,这样当软件重新安装之后,还可以获取里面的原数据。

 钥匙串的第三方框架SFHFKeychainUtils

   //保存数据

       BOOL s = [SFHFKeychainUtils storeUsername:name andPassword:pswd forServiceName:server updateExisting:NO error:nil];

   //获取密码

        NSString * psw = [SFHFKeychainUtils getPasswordForUsername:name andServiceName:server error:nil];

还有许多框架:

SSKeyChains

KeychainItemWrapper



0 0
原创粉丝点击