簡體   English   中英

Android 使用警報管理器的通知不起作用

[英]Android Notification using alarm manager not working

我一直在嘗試讓通知在正確的時間在 Android 上啟動。 我希望他們在應用程序啟動后 2 分鍾后關閉 go。 如果我能讓它在這里工作,我可以很容易地讓它在我真正需要的地方工作。 日志顯示所需的代碼行正在運行,但通知從未啟動。 我花了 8 個多小時嘗試調試它,卻一無所獲。 任何幫助都會很棒。

這是我創建的提醒代碼:

    final PendingIntent pi = PendingIntent.getBroadcast(this.mContext,
            0,
            i,
            PendingIntent.FLAG_ONE_SHOT);

    TimeZone timeZone= TimeZone.getDefault();
    Calendar time= Calendar.getInstance(timeZone);
    time.add(Calendar.MINUTE, 2);

    this.mAlarmManager.set(AlarmManager.RTC_WAKEUP,
            time.getTimeInMillis(),
            pi);

    Log.d ("setReminder",time.getTime().toLocaleString());

下面是我的OnAlarmRecieve代碼,根據日志,該代碼在 2 分鍾后永遠不會運行。 class 擴展BroadcastReceiver

@Override
public void onReceive(final Context context,
        final Intent intent) {
    Log.d(TAG, "Recieved wake up cal from Alarm Manger");


    final String tableName = intent.getStringExtra(IntentExtraStringStorage.TABLE_NAME);
    final long rowID = intent.getLongExtra(IntentExtraStringStorage.ROW_ID,
            -1);
    final String titleString = intent.getStringExtra(IntentExtraStringStorage.NOTIFICATION_TITLE);
    final String notificationString=intent.getStringExtra(IntentExtraStringStorage.NOTIFICATION_NOTE);

    WakeUpReminderIntentService.acuireStaticLock(context);

    /*if (tableName== Task.TABLE_NAME) {
        launchTaskView(context, rowID);
    }
    else {
        Log.e (TAG, "Did not Launch");
        Toast.makeText(context, "Did not work right", Toast.LENGTH_SHORT).show();
    }*/
    Intent i = new Intent (context, ReminderService.class);
    i.putExtra("taskID", rowID);
    i.putExtras(intent.getExtras());
    Log.d(TAG, "Launched task");
    //TODO Added code to build the screen correctly
    //FIXIT this need to be finished.
    context.startService(i);
}]=

問題不在於將OnAlarmReciever作為接收器放入 mainfest 中,而且還有一些東西沒有放入服務中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM