我有一个实用程序类,它需要能够从另一个类接收广播意图。该实用程序类不扩展 Activity 或 Service。如何在此类中实例化和注册广播接收器?
因为该类不是 Activity 类,所以没有 onCreate 或 onDestroy 回调方法。唯一放置注册接收器的地方是在构造函数中,但是没有 onDestroy 方法,所以我找不到放置取消注册接收器调用的地方。
我有一个实用程序类,它需要能够从另一个类接收广播意图。该实用程序类不扩展 Activity 或 Service。如何在此类中实例化和注册广播接收器?
因为该类不是 Activity 类,所以没有 onCreate 或 onDestroy 回调方法。唯一放置注册接收器的地方是在构造函数中,但是没有 onDestroy 方法,所以我找不到放置取消注册接收器调用的地方。
我不知道有什么方法可以做到这一点。您本质上是在问如何实例化一个需要依赖于活动生命周期而不依赖于活动生命周期的类。我建议你重构让你的代码在 onCreate() 和 onDestroy() 中被调用。但请记住,可以随时创建和销毁活动。如果您在应用程序中使用多个活动,当您从一个活动切换到另一个活动时,您将遇到接收广播的问题。
将实用程序类传递给您的应用程序实例,Context
您可以使用它来注册接收器。如果您需要运行响应意图的代码,则必须使用 andActivity
或Service
。那是安卓。