gpt4 book ai didi

java - 如果我们不注销 BroadcastReceiver 会发生什么?

转载 作者:行者123 更新时间:2023-12-05 00:01:19 26 4
gpt4 key购买 nike

假设我在 onCreate() 中动态注册了一个 BroadcastReceiver,它是 Activity 的内部类,并且没有在任何地方取消注册代码。

现在假设 finish() 被调用,一段时间后,应用程序再次打开。会使用新的接收者对象吗?考虑到具有相同 Intent 过滤器的旧接收器对象可能仍在内存中......

最佳答案

如果您忘记取消注册接收者内部 Activity 类,Android 系统会报告泄漏的广播接收者错误。

但是如果BroadcastReceiver是被Service动态注册的,那么在Service销毁的时候确保未注册就不会泄露。服务重启后(被系统杀死后)会再次尝试更新。当此更新失败时,您将再次注册 BroadcastReceiver 以监听连接变化。

关于java - 如果我们不注销 BroadcastReceiver 会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37022786/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com