在小米2A,Android 4.1版中,除非我启动我的应用程序,否则我无法在重启后收到任何广播。除非用户打开,否则XiaoMi禁用启动已完成默认应用程序的广播。 我在这里看了很多帖子:
Broadcast receiver not working in ICS if the app is not started atleast once
http://commonsware.com/blog/2011/07/13/boot-completed-regression-confirmed.html
Cannot receive broadcast in ICS
他们都说谷歌刚刚在Android 3.0版之后实现了它。事实是我的Android 4.3的Galaxy Nexus,即使应用程序在重启之后也没有启动,可以接收自定义广播(未启动完成)。 即使使用小米系统,也可以在我为我的应用程序打开启动完成权限后收到广播。有人可以告诉我为什么吗?
这是发送意图:
Intent intent = new Intent();
intent.setAction("com.test.test");
intent.setFlags(Intent.FLAG_INCLUDE_STOPPED_PACKAGES | intent.getFlags());
context.sendBroadcast(intent);
,接收如下:
<receiver
android:name="com.test.TestReceiver"
android:exported="true">
<intent-filter>
<action android:name="com.test.test"></action>
</intent-filter>
</receiver>
public class TestReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals("com.test.test")) {
Log.e("Chris", "received test action");
}
}
}
答案 0 :(得分:1)
在小米,你可以选择所有应用程序可以自动启动。
Security App > Permissions > Autostart
您可以在此处为自己的应用启用自动启动功能。
我认为这会解决您的问题