Android 已完成对启动单元的操作

Android 已完成对启动单元的操作,android,android-manifest,Android,Android Manifest,我在我的应用程序中使用的权限为“BOOT_COMPLETED”,但不起作用。 重置手机后,应用程序错误“不幸已停止”。 我有什么问题 public class BootUpReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { Intent i = new Intent(context, AlarmReceiver

我在我的应用程序中使用的权限为“BOOT_COMPLETED”,但不起作用。 重置手机后,应用程序错误“不幸已停止”。 我有什么问题

public class BootUpReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        Intent i = new Intent(context, AlarmReceiverActivity.class);
            i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(i);
    }
}
舱单:

<uses-permission android:name="android.permission.BOOT_COMPLETED"/>
       <intent-filter>
           <action android:name="android.intent.action.BOOT_COMPLETED" />
           <category android:name="android.intent.category.DEFAULT" >
           </category>
       </intent-filter>
   </receiver>
</application>
</manifest>

您似乎错过了接收器开始标签

 <receiver android:name=".BootUpReceiver " >

并将您的许可更改为

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

而不是

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

i、 e.将清单代码重写为

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<receiver android:name=".BootUpReceiver " >
       <intent-filter>
           <action android:name="android.intent.action.BOOT_COMPLETED" />
       </intent-filter>
   </receiver>

权限行应为:

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

接收人的声明应为(无类别):


发布stacktrace请求。
<receiver android:name="com.your.receiver.YourBootReceiver">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>