我可以为Android编程中的活动注册多个BroadcastReceiver吗?
我实现了一个示例应用程序,其中显示了Android应用程序的手机信息、电池信息。我为两个活动创建了两个不同的类文件 获取与电话相关的信息没有问题。在手机上获取电池相关信息时出现问题。以下是我想要注册的一些预期操作我可以为Android编程中的活动注册多个BroadcastReceiver吗?,android,broadcastreceiver,battery,android-sdk-2.1,Android,Broadcastreceiver,Battery,Android Sdk 2.1,我实现了一个示例应用程序,其中显示了Android应用程序的手机信息、电池信息。我为两个活动创建了两个不同的类文件 获取与电话相关的信息没有问题。在手机上获取电池相关信息时出现问题。以下是我想要注册的一些预期操作 Intent.ACTION_BATTERY_CHANGED Intent.ACTION_UMS_CONNECTED Intent.ACTION_UMS_DISCONNECTED Intent.ACTION_POWER_CONNECTED Intent.ACTION_POWER_DISC
Intent.ACTION_BATTERY_CHANGED
Intent.ACTION_UMS_CONNECTED
Intent.ACTION_UMS_DISCONNECTED
Intent.ACTION_POWER_CONNECTED
Intent.ACTION_POWER_DISCONNECTED
案例1-我为上述每个操作注册了多个BroadcastReceiver。
结果-仅操作\电池\更改的操作数据正常。但与其他行动相关的数据并不是很好
案例2-我只注册了一个广播接收器,用于更换电池。在执行onReceive(Context-Context,Intent-Intent)方法时,我正在检查其他动作(动作已连接、动作已断开、动作已通电、动作已断电)
结果-仍然是相同的问题,其他行动相关的信息没有很好地显示出来
我用我的Android手机进行了测试,它有Android 2.1 update-1版本
我可以为Android编程中的活动注册多个BroadcastReceiver吗
好的,是的。此外,对于您的场景,您不一定需要多个BroadcastReceiver
对象——您可以创建一个IntentFilter
,列出所有所需操作(请参见addAction()
方法)
其余的都是错误数据
对不起,那句话不能用英语解析
结果-仍然是相同的问题,其他行动相关的信息没有很好地显示出来
如果您没有为给定的广播操作注册接收器,您将不会接收该操作的广播