android处理token过期的一种方法

“`

“` 众所周知,android程序在另一台手机登陆时这是不允许的,所以就有了token的出现。问题来了,当你的token过期时,你需要关闭正在运行的所有activity,然后跳到登陆界面,但是我现在很有可能开了两个或以上的线程在请求数据,如果你你在每次请求数据返回token过期时都start一个新的activity的话,那你有可能会情动多个activity。
然后就想到了在登陆activity里面添加启动模式,lauchMode的singleInstance和singleTask,因为它们两个都是只容许activity,也就是单例,开始使用singleINstance,但是发现退出时会闪几下,因为singleInstance是将Activity压入一个新建的任务栈中。
后来用singleInstance发现可以,,因为 singleTask的Activity首次调用时会新开一个task。当singleTask Activity再次进入task(即将放入栈顶),则销毁其上的所有activity。singleTask模式的Activity不管是位于栈顶还是栈底,再次运行这个Activity时,都会destory掉它上面的Activity来保证整个栈中只有一个自己,切记切记。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值