adb shell am broadcast -a action.xxx.xxx.xxx
/system_process W/BroadcastQueue: Background execution not allowed: receiving Intent { act=action.net.servicestate flg=0x400010 } to xxx/xxx
原因:
if (allowed == ActivityManager.APP_START_MODE_DISABLED) {
Slog.w(TAG, "Background execution disabled: receiving "
+ r.intent + " to "
+ component.flattenToShortString());
skip = true;
} else if (((r.intent.getFlags()&Intent.FLAG_RECEIVER_EXCLUDE_BACKGROUND) != 0)
|| (r.intent.getComponent() == null
&& r.intent.getPackage() == null
&& ((r.intent.getFlags()
& Intent.FLAG_RECEIVER_INCLUDE_BACKGROUND) == 0)
&& !isSignaturePerm(r.requiredPermissions))) {
mService.addBackgroundCheckViolationLocked(r.intent.getAction(),
component.getPackageName());
Slog.w(TAG, "Background execution not allowed: receiving "
+ r.intent + " to "
+ component.flattenToShortString());
skip = true;
}
方案1:
public static final int FLAG_RECEIVER_INCLUDE_BACKGROUND = 0x01000000;
adb shell am broadcast -a action.xxx.xxx.xxx -f 16777216
方案2:
adb shell am broadcast -a action.xxx.xxx.xxx -es package "xxxx"
Background execution not allowed
最新推荐文章于 2024-01-18 13:34:50 发布