Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/212.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android AlarmManager/BroadcastReceiver不工作_Android_Android Intent_Broadcastreceiver - Fatal编程技术网

Android AlarmManager/BroadcastReceiver不工作

Android AlarmManager/BroadcastReceiver不工作,android,android-intent,broadcastreceiver,Android,Android Intent,Broadcastreceiver,当AlarmManager工作正常或BroadcastReceiver未收到通知时,我会遇到此问题。当我在API10(2.3.7)上测试应用程序时,就会出现这个问题,但是当我在API14++上测试它时,它工作得很好。 下面是调用AlarmManager的代码片段: AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE); Intent Notifyintent = new Intent(MainActivity.this,

当AlarmManager工作正常或BroadcastReceiver未收到通知时,我会遇到此问题。当我在API10(2.3.7)上测试应用程序时,就会出现这个问题,但是当我在API14++上测试它时,它工作得很好。 下面是调用AlarmManager的代码片段:

AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
Intent Notifyintent = new Intent(MainActivity.this, Notify.class);
PendingIntent Notifysender = PendingIntent.getBroadcast(getApplicationContext(),
0, Notifyintent, PendingIntent.FLAG_UPDATE_CURRENT);
am.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), Notifysender);
这是BroadcastReceiver类:

public class Notify extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        Log.d("Notify","OnReceive");
    }
}
以及AndroidManifest.xml

    <receiver android:name=".Notify">
        <intent-filter>
            <action android:name="android.intent.action.NOTIFY"/>
        </intent-filter>
    </receiver>

如果上面的代码在API 10(2.3.7)上运行,“通知”日志消息将不会出现,但是如果它在API 14++上运行,“通知”日志消息将正常显示


谢谢:)

Ooops,对不起,在不同的模拟器(相同的API 10 2.3.7)中尝试后,它实际上工作得很好。 所以我认为问题可能出在模拟器上。 谢谢:)

检查您的舱单。
android:targetSdkVersion=“Y”


在某些设备中,警报或广播可能被框架阻止,您最好在仿真中进行验证。

感谢您的回答。我的targetSdkVersion是19,在不同的模拟器(API 10 2.3.7)中尝试后,上面的代码实际上对我有效。所以,我想我的初始模拟器有一些问题。