昨天我問了一個類似這樣的問題,但已經改變了我的代碼,並且現在有一個不同的問題。報警管理器無法觸發
我有一個切換按鈕,設置報警經理掛起的意圖5秒後,應能觸發。我有一次性的設置,所以我希望消息出現一次(後面我會實現這個日期值)。
我沒有得到這個代碼的錯誤,但我似乎不能觸發我的意圖,然後顯示我的吐司消息。
下面是我所定義的「DateAlarm」類中的XML活動:
<activity
android:name=".DateAlarm"
android:label="@string/app_name" >
<intent-filter>
<action android:name="com.example.flybase2.DateAlarm" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
我的繼承人我的切換按鈕的onClick方法爲我與報警經理切換按鈕:
case (R.id.toggleButton1):
Integer dobMonth = setDate.getMonth();
Integer dobYear = setDate.getYear();
Integer dobDate = setDate.getDayOfMonth();
Date set;
set = new Date(dobYear - 1900, dobMonth, dobDate);
AlarmManager am = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(this, DateAlarm.class);
PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent, PendingIntent.FLAG_ONE_SHOT);
am.set(AlarmManager.RTC_WAKEUP,System.currentTimeMillis() + (5 * 1000), pendingIntent);
break;
和我最後的'DateAlarm'類持有意圖的行動。
package com.example.flybase2;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.widget.Toast;
public class DateAlarm extends Activity {
Context context;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Toast.makeText(context, "Appointment is today", Toast.LENGTH_LONG).show();
}
}
嘗試改變PendingIntent.getService到PendingIntent.getActivity –
@ A - Ç感謝那似乎開始了這個意圖。現在只有問題當在DateAlarm類上打開類時,即時獲取Null指針異常。 – user1352057
您尚未初始化上下文。在onCreate()做'context = this;' –