通过测试代码
public void onReceive(Context context, Intent intent) {
Log.e(TAG, "---onReceive---" + context.getPackageName());
try {
Thread.currentThread().sleep(4000);
} catch (InterruptedException e) {
e.printStackTrace();
}
abortBroadcast();
}
得出结果。
同时接收开机广播的多个应用,会通过顺序接收,并不是无序广播的异步操作。
第二个接收开机广播的应用会在第一个应用接到开机广播后延迟指定的时间(4秒),收到开机广播。拦截方法并没有起到作用,说明不是有序广播的机制。