我可以为Android编程中的活动注册多个BroadcastReceiver吗?

我可以为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

我实现了一个示例应用程序,其中显示了Android应用程序的手机信息、电池信息。我为两个活动创建了两个不同的类文件

获取与电话相关的信息没有问题。在手机上获取电池相关信息时出现问题。以下是我想要注册的一些预期操作

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()
方法)

其余的都是错误数据

对不起,那句话不能用英语解析

结果-仍然是相同的问题,其他行动相关的信息没有很好地显示出来

如果您没有为给定的广播操作注册接收器,您将不会接收该操作的广播