android - 无法信任 AAC 生命周期的当前状态
问题描述
问题摘要
getLifecycle().getCurrentState()
给了我错误的状态。
环境(集成库、操作系统等)
- compileSdkVersion:27
- targetSdkVersion : 27
- 支持库:27.1.1
预期行为
- onCreate() -> 已创建
- onStart() -> 开始
- onResume() -> 恢复
- onPause() -> 开始
- onStop() -> 已创建
- onDestroy() -> 销毁
实际行为
- onCreate :初始化
- onStart :已创建
- onResume :开始
- onPause : 开始
- onStop : 已创建
- onDestroy : 销毁
问题详情
我尝试使用下面的代码。我搜索了谷歌,但没有人对此感到奇怪。我是不是少了点什么?
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Log.i(MainActivity::class.java.name, "onCreate : " + lifecycle.currentState.name)
}
override fun onStart() {
super.onStart()
Log.i(MainActivity::class.java.name, "onStart : " + lifecycle.currentState.name)
}
override fun onResume() {
super.onResume()
Log.i(MainActivity::class.java.name, "onResume : " + lifecycle.currentState.name)
}
override fun onPause() {
super.onPause()
Log.i(MainActivity::class.java.name, "onPause : " + lifecycle.currentState.name)
}
override fun onStop() {
super.onStop()
Log.i(MainActivity::class.java.name, "onStop : " + lifecycle.currentState.name)
}
override fun onDestroy() {
super.onDestroy()
Log.i(MainActivity::class.java.name, "onDestroy : " + lifecycle.currentState.name)
}
}
解决方案
如果您查看文档,您的实际行为是预期行为: https ://developer.android.com/topic/libraries/architecture/lifecycle
将状态视为图的节点,将事件视为这些节点之间的边。
推荐阅读
- python - 使用 pandas 合并 csv 行
- sql-server - TSQL 函数 - 记忆(几乎就像 Python 中的一样)
- ruby-on-rails - 从 CSV 文件创建设计用户 - Rails - PG
- javascript - Nodejs,我的代码有时会在反序列化文件中暂停
- python - strftime 格式 - 我做错了什么?
- javascript - 刷新主页内的页面时防止div在顶部滚动
- javascript - 一旦鼠标移离标记,就无法从标记释放弹出窗口
- sh - sh:将命令字符串ourtput添加到数组
- javascript - 截断临时表,加载 XML 文件数据,然后使用 Node.js 从 Mysql 中的临时表插入主表
- date - SAS today() 函数程序