应用切换至后台后,关闭应用权限,再重新打开应用,崩溃问题

2019-05-12  本文已影响0人  牙膏很好吃

当应用被关闭权限后,处于后台的应用会关闭,当再次打开时,应用的application会再次启动,执行生命周期的方法,然后启动上次位于activity栈顶的activity,并且onSaveInstance不为null

处理方法


在基类中,判断当activity的onSaveInstance不为null时,检查需要的权限是否被授予,如果发现必要权限被关闭,可以启动开屏activity,重新申请权限

onCreate(saveInstanceState:Bundle){
  if(saveInstanceState != null){
    //检查权限是否正常
    if(!hasPermission(...)){
      //没有权限
      val intent = Intent(this,SplashActivity::class.java)
      intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
      startActivity(intent)
    }
  }
}
上一篇下一篇

猜你喜欢

热点阅读