0
我有一個public class AlarmReceiver extends BroadcastReceiver
和具有以下部分活動在其onCreate
廣播接收器不觸發
Intent intent = new Intent(this, AlarmReceiver.class);
pintent = PendingIntent.getBroadcast(this, 0, intent, 0);
AlarmManager alarm = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
alarm.setExact(AlarmManager.RTC, Calendar.getInstance().getTimeInMillis() + 5000, pintent);
} else {
alarm.set(AlarmManager.RTC, Calendar.getInstance().getTimeInMillis()+5000, pintent);
}
因此,執行該代碼後,我的AlarmReceiver
應該叫5秒的onReceive
方法,應該不會吧?但事實並非如此,我等了幾分鐘,但沒有任何反應。是的,我已將<uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>
添加到我的清單中。 (我的手機執行setExact
)
你有沒有在清單中所列的接收器?另外,你不需要'SET_ALARM'權限。 –
啊當然...忘了那個。可惜的是,這並沒有給我一個錯誤,比如當我嘗試開始一個沒有在那裏列出的活動時。爲什麼我不需要許可?那是什麼? – Ginso
使用'Intent'設置鬧鐘應用需要'SET_ALARM'權限。看看[這裏](https://developer.android.com/reference/android/provider/AlarmClock.html)。 –