sharedpreferencesを使用する際にnullポインタ例外があります。私は自分の問題を表現する方法を知らない。私は特定の時間に起動するアラームマネージャーを持っていますが、これはフォアグラウンドまたはバックグラウンドでアプリケーションを実行すると非常にうまくいきましたが、私のプログラムを終了すると(最近のアプリケーションからアプリをスワイプすることを意味します)私は検索しましたが、解決策は見つかりませんでした。あなたが私を助けてくれたら教えてください。SharedPreferencesはアプリケーションを終了した後nullPointerExceptionを受け取ります
エラー:
私getAlarmTime方法java.lang.NullPointerException at com.company.test.Data.od.getAlarmTime()
:
public static long getAlarmTime(Context context){
SharedPreferences sh = context.getSharedPreferences("com.company.test", 0);
return sh.getLong("AlarmTime", 0);
}
と私の方法は、私がbroadcastrecieverからcheckNextPeriod法と呼ば
public class ServiceSchedular {
private ServiceSchedular(Context context) {
this.context = context;
alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
}
public static void checkNextPeriod() {
long millisDate = OfflineData.getAlarmTime(context);
...
}
}
getAlarmTime()
と呼ばれます。
は 'context'はnullです –
**コンテキストを初期化しています** –
@NileshRathod私の質問を編集します。私はServiceSchedularメソッドでコンテキストを初期化し、mainActivityからこのメソッドを呼び出すが、私はプログラムを終了する。インスタント・コンテキストを実行しますか? – Fahim