diff --git a/app/src/main/java/org/traccar/client/AutostartReceiver.java b/app/src/main/java/org/traccar/client/AutostartReceiver.java index e61d230..3cd4db0 100644 --- a/app/src/main/java/org/traccar/client/AutostartReceiver.java +++ b/app/src/main/java/org/traccar/client/AutostartReceiver.java @@ -22,13 +22,13 @@ import android.preference.PreferenceManager; import android.support.v4.content.WakefulBroadcastReceiver; public class AutostartReceiver extends WakefulBroadcastReceiver { - + @Override public void onReceive(Context context, Intent intent) { - SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context); - if (sharedPreferences.getBoolean(MainActivity.KEY_STATUS, false)) { - context.startService(new Intent(context, TrackingService.class)); - } + SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context); + if (sharedPreferences.getBoolean(MainActivity.KEY_STATUS, false)) { + startWakefulService(context, new Intent(context, TrackingService.class)); + } } } diff --git a/app/src/main/java/org/traccar/client/TrackingService.java b/app/src/main/java/org/traccar/client/TrackingService.java index 6ffd925..9f1b5ae 100644 --- a/app/src/main/java/org/traccar/client/TrackingService.java +++ b/app/src/main/java/org/traccar/client/TrackingService.java @@ -53,7 +53,9 @@ public class TrackingService extends Service { @SuppressWarnings("deprecation") @Override public void onStart(Intent intent, int startId) { - AutostartReceiver.completeWakefulIntent(intent); + if (intent != null) { + AutostartReceiver.completeWakefulIntent(intent); + } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ECLAIR && foreground) { Intent notificationIntent = new Intent(this, MainActivity.class);