博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
判断ios app 第一次启动 别人的 嘿嘿
阅读量:5101 次
发布时间:2019-06-13

本文共 998 字,大约阅读时间需要 3 分钟。

流行的解决方案是在大多数地方是用[NSUserDefaults standardUserDefaults的一个关键,如果它不存在,这意味着这是应用程序启动,否则,它不是第一次

在appdelegate.m中找到 “application:didFinishLaunchingWithOptions:” 方法, 添加以下代码:

if
(![[NSUserDefaults standardUserDefaults] boolForKey:@
"everLaunched"
]) {
   
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@
"everLaunched"
];
   
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@
"firstLaunch"
];
}
else
{
   
[[NSUserDefaults standardUserDefaults] setBool:NO forKey:@
"firstLaunch"
];
}
 
总的解决办法是 2 个key: @”everLaunched”判断用户以前是否登录,
 
@”firstLaunch” 用来开发者在程序的其他部分判断.
 
在第一次启动的时候 key @”everLaunched” 不会被赋址的, 并且设置为YES. @”firstLaunch” 被设置为 YES.
在程序的其他部分用以下代码判断:
 
if
([[NSUserDefaults standardUserDefaults] boolForKey:@
"firstLaunch"
]) {
   
// 这里判断是否第一次
UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@
"第一次"
  
message:@
"进入App"
                                                              
delegate:self
cancelButtonTitle:@
"我知道了"
otherButtonTitles:nil];
[alert show];
[alert release];
 
}
第一段代码运行key @”firstLaunch” 将被设置为 NO

转载于:https://www.cnblogs.com/gzz2016/p/5103268.html

你可能感兴趣的文章
回调没用,加上iframe提交表单
查看>>
(安卓)一般安卓开始界面 Loding 跳转 实例 ---亲测!
查看>>
Mysql 索引优化 - 1
查看>>
LeetCode(3) || Median of Two Sorted Arrays
查看>>
大话文本检测经典模型:EAST
查看>>
linux基础命令-chgrp/chown/chomd
查看>>
待整理
查看>>
一次动态sql查询订单数据的设计
查看>>
C# 类(10) 抽象类.
查看>>
Nginx+Keepalived 实现双击热备及负载均衡
查看>>
Vue_(组件通讯)子组件向父组件传值
查看>>
jvm参数
查看>>
Something-Summary
查看>>
Spring学习笔记
查看>>
6个有用的MySQL语句
查看>>
我对前端MVC的理解
查看>>
Silverlight实用窍门系列:19.Silverlight调用webservice上传多个文件【附带源码实例】...
查看>>
2016.3.31考试心得
查看>>
mmap和MappedByteBuffer
查看>>
Linux的基本操作
查看>>