错误信息:

LifecycleOwner xx is attempting to register while current state is RESUMED. LifecycleOwners must call register before they are STARTED.

意思就是registerForActivityResult必须在生命周期STARTED之前调用

错误代码示例:

override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)findViewById<Button>(R.id.float_bth).setOnClickListener {val registerForActivityResult =registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {// ...}registerForActivityResult.launch(intent)}}

注意:上面代码中将registerForActivityResult的创建设置在了点击事件的内部,而此时的APP状态是RESUMED

解决:将registerForActivityResult的创建移动到onCreate()中去

override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)val registerForActivityResult =registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {// ...}findViewById<Button>(R.id.float_bth).setOnClickListener {registerForActivityResult.launch(intent)}
}

另外:如果使用fragment,需要设置在fragmentonCreate()

参考:

How to resolve the error “LifecycleOwners must call register before they are STARTED”

register while current state is RESUMED. LifecycleOwners must call register before they are STARTED.相关推荐

  1. LifecycleOwner xx is attempting to register while current state is RESUMED. LifecycleOwners must cal

    LifecycleOwner xx is attempting to register while current state is RESUMED. LifecycleOwners must cal ...

  2. java.lang.AssertionError: Activity needs to be set if initial lifecycle state is resumed

    报错:java.lang.AssertionError: Activity needs to be set if initial lifecycle state is resumed 把:    se ...

  3. 虚拟机打开时报错Operation inconsistent with current state。

    虚拟机报错Operation inconsistent with current state. 有时候突然打开虚拟机会出现这个状况 我看过很多博客,也用过很多方法,下面根据自身经验给大家介绍一下怎么解 ...

  4. Error: Assignments can only be reset if the group ‘group‘ is inactive, but the current state is Stab

    kafka将指定主题的指定分区的偏移量向前移动n(10)个消息的时候报错 Error: Assignments can only be reset if the group 'group' is in ...

  5. 【好记性不如烂笔头】记一次线上问题,系统卡爆了,排查日志发现出现了ownerThread current state is WAITING, current stackTrace

    问题描述   项目部署在linux环境,运行期间页面访问特别卡,功能无法正常使用. 原因分析:   排查后台日志发现出现了"ownerThread current state is WAIT ...

  6. 解决打开虚拟机 VMware Workstation 报错无法改变虚拟机的电源状态 Operation inconsistent with current state问题

    原因 不正常的关闭虚拟机导致,如没有关闭虚拟机,就关机重启等原因. 在你的本次会话中,你的虚拟机是关闭的,但是VM的服务中他还是开启的. 大概是这个原因,按照网上的方式重启虚拟机服务也可以解决. 解决 ...

  7. vmware worlstation15.5 打开虚拟机报错 :operation inconsistent with current state!

    解决方法一:以管理员身份重启虚拟机 解决方法二:重装虚拟机

  8. startActivityForResult被标记为弃用后,如何优雅的启动Activity?

    文章目录 一.如何解决 startActivityForResult 被弃用? 二.ActivityResultContract 该如何使用? 三.但是......我就想简单的使用startActiv ...

  9. android 悬浮窗的检查

    1.判断悬浮窗是否打开 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {val canDrawOverlays = Settings.c ...

最新文章

  1. android启动第三方应用
  2. 【Android工具】远程登录会话工具免费好用的SSH客户端——JuiceSSH
  3. flatMap()和事件顺序– RxJava常见问题解答
  4. spring mvc学习(13)windows上安装maven
  5. guava 之 ImmutableMap 使用实例及好处
  6. @所有人,云计算喊你一起来学习!
  7. 专有网络、云产品、路由器和交换机
  8. HDU1877 又一版 A+B【进制】
  9. 我的家庭私有云计划-14
  10. 驱动概念(uboot命令)
  11. 关于jabber协议
  12. Go 每日一库之 roaring
  13. webService接口的荆棘之路
  14. PV,UV,VV 含义
  15. linux查找所有可用的摄像头
  16. parsec使用教程
  17. regsvr32 注册 ocx 时卡死,不退出
  18. DolphiScheduler平台上运行spark程序时,外部参数设置
  19. react native 调用手机内置地图
  20. CNCC 2017大会第一天,邱成桐,梅宏,沈向洋,李飞飞,汤道生,马维英都讲了什么?...

热门文章

  1. LED的闪烁频率设定
  2. 异步下载小说《诡秘之主》
  3. 服务器显示拥挤进不去怎么办,《拥挤城市》游戏进不去怎么办 玩不了解决方法...
  4. 学大伟业2018-2019学年第二学期《自主招生集训课程》
  5. 索为百万工业互联网APP平台“众工业”在2018工业互联网峰会重磅发布
  6. 三年打造AI芯片黑科技,IBM“狩猎女神之矛”将撬动企业混合云
  7. ps4移植android游戏,安卓玩PS4游戏 remote play安装教程
  8. 压缩和解压缩文件(十一)
  9. android jni黑屏,android使用高德地图出现诡异的:JNI DETECTED ERROR IN APPLICATION
  10. 《大象:thinking in uml 》(第二版) 11章 系统分析 3-4节 用例实现、软件架构和框架