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

当应用被关闭权限后,处于后台的应用会关闭,当再次打开时,应用的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)
    }
  }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容