[英]DialogFragment 'java.lang.String android.content.Context.getPackageName()' on a null object reference
[英]'java.lang.String android.content.Context.getPackageName()' on a null object reference error
我有一個充滿警報的數據庫,用於創建警報的服務在啟動時啟動,但是一旦創建循環便崩潰。 錯誤是:
“ java.lang.NullPointerException:嘗試在空對象引用上調用虛擬方法'java.lang.String android.content.Context.getPackageName()'”
編輯:
碼:
public class NotificationServiceStartOnBoot extends Service {
UserDbHelper userDbHelper;
SQLiteDatabase sqLiteDatabase;
Context context;
Cursor cursor;
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate() {
super.onCreate();
Log.e("SERVICE", "STARTED...");
userDbHelper = new UserDbHelper(getApplicationContext());
sqLiteDatabase = userDbHelper.getReadableDatabase();
cursor = userDbHelper.getNotifications(sqLiteDatabase);
Log.e("SERVICE", "About to begin loop...");
if(cursor.moveToFirst())
{
Log.e("SERVICE", "if statement accepted...");
do
{
Log.e("SERVICE", "notification loop begun...");
String date,UID;
date = cursor.getString(0);
UID = cursor.getString(1);
// Long notificationDate = Long.valueOf(date);
Long notificationUID = Long.valueOf(UID);
long milliSeconds= Long.parseLong(date);
//System.out.println(milliSeconds);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(milliSeconds);
final int _id = (int) System.currentTimeMillis();
Intent alarmIntent = new Intent(context, AlarmReceiver.class);
alarmIntent.putExtra("nID", notificationUID);
//make sure the intent have id's
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, _id, alarmIntent , 0);
AlarmManager alarmManager = (AlarmManager)context.getSystemService(ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC, calendar.getTimeInMillis(), pendingIntent);
}while (cursor.moveToNext());
}
Log.e("SERVICE", "outside if statement...");
//NotificationGenerator.generateNotification(context, null, null, null, null);
}
}
您的上下文為空。 Context context;
您在哪里設置上下文 ? 在使用之前設置上下文。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.