Android 6阻止启动完成广播

时间:2017-04-12 08:13:56

标签: android broadcastreceiver android-broadcast

我的应用停止在Android 6上接收启动广播(它在Android 5上正常运行)。

我在日志中注意到广播被阻止了:

I/BackgroundManagerService: prevent from boot complete broadcast: com.mycompany.app

这是我的AndroidManifest.xml:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

<application
...     
         <receiver android:name="plugin.kiosk.BootService">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                </intent-filter>
         </receiver>
...
</application>

我的应用包名称为:com.mycompany.app,我的广播类位于不同的包下(plugin.kiosk)。

有没有人见过这个问题?有线索吗?

更新:我已经尝试过更改为:

<receiver android:name="plugin.kiosk.BootService" android:enabled="true" android:exported="true" >

但同样的问题。

更新2:尝试添加新操作(下方)和同样的问题。

<action android:name="android.intent.action.QUICKBOOT_POWERON" />

2 个答案:

答案 0 :(得分:1)

在@Dejvid的帮助下,我能够确定我的代码很好,这与我的平板电脑有关。

确实,我在另一台平板电脑上尝试了我的代码,但一切正常。

所以,我猜我原来的平板电脑上有一个奇怪的过程阻止了广播。

答案 1 :(得分:0)

您的清单中是否有In [23]: d = np.concatenate((c, a[None]), axis=0) In [24]: d.shape Out[24]: (3, 3, 4) In [25]: e = np.concatenate((d, a[None]), axis=0) In [26]: e.shape Out[26]: (4, 3, 4) 权限?