有些 app 当天第一次进入时的弹框是怎么实现的 第二次进不会提示 求大神说说实现方式
web页也有类似的效果,实现方式是在本地cookie或者localstorage做个标记就可以。打开的时候检查有标记说明弹框已经提示过了,没标记就提示弹框,弹框消失时执行存储标记的回调。app肯定也是类似的道理。
首先,你这个提问的标签,应该是ios或者android吧,而不是php。
这跟原生app的生命周期
有关。
所谓的第一次进入
,指的是app启动。
而第二次进入
,我猜想你的操作是,让app最小化,然后再打开?这时,其实只是从后台唤起应用而已,走的不是启动的入口。
如果想当天重现app启动,可以把进程杀掉,再打开app,应该就会有弹框了。
当然,也可能是后端服务控制,app请求接口来控制如何弹框。
比如,一天内只弹一次,之后再也不弹出,之类的。
关于生命周期,附上一张ios的,可以参考一下:
既然你在php问,我就以php来答。
用户登陆后,就有一个用户id,用这个用户 id 在sql中插一条数据(如果简单用session 或 cookies 有可能会丢失)。这条数据中有一个日期和一个已经显示了没有的标识。
每一次登录就对比一下这个日期。
大于1天就更新这个日期,并reset标识。少于一天就看看标识今天已经显示过了没有。
2 回答1.5k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
2 回答871 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
2 回答930 阅读
1 回答912 阅读
1 回答841 阅读
一个简单的做法是:
打开app时,读取上次弹窗时间,如果时间已经是昨天了就再弹窗,将新的时间存入本地。