在某些情况下,不需要我的广播接收器,因此需要检查接收器是否为空,但不知何故该对象不为空,即使不使用它并导致崩溃。
Run Code Online (Sandbox Code Playgroud)private val myBroadCastReceiver by lazy { MyBroadcastReceiver() } if(myBroadCastReceiver != null) unregisterReceiver(myBroadCastReceiver)
当您尝试空检查时,它已初始化,因此它不为空。尝试这个而不是偷懒。
private var myBroadCastReceiver : MyBroadcastReceiver? = null
Run Code Online (Sandbox Code Playgroud)
或尝试这个答案 Kotlin: 检查惰性 val 是否已初始化
| 归档时间: |
|
| 查看次数: |
448 次 |
| 最近记录: |