このようなアプリケーションワイドタスクを処理する拡張アプリケーションファイルに隠れているアラームマネージャメソッドを起動するために、これは、私がアクティビティから呼び出すときにうまく動作しますが、ブロードキャストレシーバーから呼び出すときにクラッシュし、うまく動作しません。私は何らかの考え方をしているので、何らかの方法でコンテキストを追加する必要がありますか?ここAndroidブロードキャストレシーバが拡張アプリケーションでヌルポインタ例外を返す
は私のコードです:
package com.testapp21.second.activities;
import com.testapp21.second.OTweetApplication;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class PhoneOnReceiver extends BroadcastReceiver {
private OTweetApplication app;
@Override
public void onReceive(Context context, Intent intent) {
app.startChecks();
}
}
編集:ここstartCheckshelper(と呼ばれるヘルパーファイル内のメソッドへのオフ、その後startChecks代表者)は、コードのブロックは、この次のようになります。
public void startCheckshelper(){
mAlarmSender = PendingIntent.getService(context,
0, new Intent(context, CheckerService.class), 0);
// We want the alarm to go off 30 seconds from now.
long firstTime = SystemClock.elapsedRealtime();
// Schedule the alarm!
AlarmManager am = (AlarmManager)context.getSystemService(Service.ALARM_SERVICE);
am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP,
firstTime, 60*1000, mAlarmSender);
}
startChecks()でクラッシュしますか?私は、私が思うようにもっと多くの情報を知る必要があります。 – davehale23
拡張アプリケーションから実行するメソッドにIveが追加されました –