Java 广播接收机不';我不明白你的意思

Java 广播接收机不';我不明白你的意思,java,android,Java,Android,我有一个简单的广播接收器,当手机通电或重启后打开时,它应该调用一个方法。但它没有接到任何电话 public class MyReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){ MainActivi

我有一个简单的广播接收器,当手机通电或重启后打开时,它应该调用一个方法。但它没有接到任何电话

  public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
    if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){
        MainActivity.activateMidnightService(true);
        Log.e("myReceiver", "turned on");
    } 
}
}
我在舱单上登记了

    <receiver
        android:name="hasebou.karim.simplify.MyReceiver"
        android:enabled="true"
        android:exported="true"
        android:permission="android.permission.ACTION_BOOT_COMPLETED" >
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        </intent-filter>
    </receiver> 

删除

android:permission="android.permission.ACTION_BOOT_COMPLETED" 
从receiver标记添加到下面的行外部应用程序标记

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


查看。您是否有
,如果有,是否在重新启动前运行该活动?Rajen的答案至少是你问题的一部分,但你还需要手动运行应用程序的某些组件,例如启动活动,然后你的
BroadcastReceiver
才能工作。我有一个活动在重新启动Rajen的答案之前运行,对我有效