我在一个接收器类中有两个intent动作。在清单文件中:
<receiver android:name=".ConnectivityReceiver" >
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"></action>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
在onReceive()
内的接收器类中:
@Override
public void onReceive(Context context, Intent intent) {
System.out.println("--------BOOT-----------"+intent.getAction());
}
此处intent.getAction()
仅返回“android.net.conn.CONNECTIVITY_CHANGE”,但我无法跟踪“Boot Completed”操作。无论如何,从共同的onReceive()
获得多个意图行动?
答案 0 :(得分:1)
是的,您可以将多个广播投放到单个onReceive()
。确保您拥有权限
<uses-permission
android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
在你的清单中。
此外,从Android 3.1开始,除非您的应用程序至少已由用户运行一次,否则您将无法获得BOOT_COMPLETED广播。见http://commonsware.com/blog/2011/07/13/boot-completed-regression-confirmed.html