Updated LocationService.startMultiShotService

It now uses AlarmManager.setInexactRepeating

Signed-off-by: Ricky Barrette <rickbarrette@gmail.com>
This commit is contained in:
2012-11-03 14:42:45 -04:00
parent e3e37d1d50
commit 2840b640df
2 changed files with 7 additions and 20 deletions

View File

@@ -2,8 +2,8 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.TwentyCodes.android.LocationRinger" package="com.TwentyCodes.android.LocationRinger"
android:installLocation="internalOnly" android:installLocation="internalOnly"
android:versionCode="176" android:versionCode="193"
android:versionName="33b5da7" > android:versionName="2d85541" >
<uses-sdk android:minSdkVersion="7"/> <uses-sdk android:minSdkVersion="7"/>

View File

@@ -6,12 +6,14 @@
*/ */
package com.TwentyCodes.android.LocationRinger.services; package com.TwentyCodes.android.LocationRinger.services;
import android.app.AlarmManager;
import android.app.NotificationManager; import android.app.NotificationManager;
import android.app.PendingIntent; import android.app.PendingIntent;
import android.content.ComponentName; import android.content.ComponentName;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.os.SystemClock;
import anroid.v4.compat.NotificationCompat; import anroid.v4.compat.NotificationCompat;
import com.TwentyCodes.android.LocationRinger.Constraints; import com.TwentyCodes.android.LocationRinger.Constraints;
@@ -47,9 +49,9 @@ public class LocationService extends com.TwentyCodes.android.location.LocationSe
* @return * @return
* @author ricky barrette * @author ricky barrette
*/ */
public static ComponentName startMultiShotService(final Context context) { public static void startMultiShotService(final Context context) {
final Intent i = getSingleShotServiceIntent(context).putExtra(LocationLibraryConstants.INTENT_EXTRA_PERIOD_BETWEEN_UPDATES, Constraints.UPDATE_INTERVAL); final AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
return context.startService(i); am.setInexactRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime(), Constraints.UPDATE_INTERVAL, PendingIntent.getService(context, 0, getSingleShotServiceIntent(context), PendingIntent.FLAG_UPDATE_CURRENT));
} }
/** /**
@@ -99,21 +101,6 @@ public class LocationService extends com.TwentyCodes.android.location.LocationSe
super.onDestroy(); super.onDestroy();
} }
/*
* (non-Javadoc)
*
* @see
* com.TwentyCodes.android.SkyHook.SkyHookService#onStartCommand(android
* .content.Intent, int, int)
*
* @author ricky barrette
*/
@Override
public int onStartCommand(final Intent intent, final int flags, final int startId) {
mPeriod = Constraints.UPDATE_INTERVAL;
return super.onStartCommand(intent, flags, startId);
}
/** /**
* starts a simple ongoing notification to inform the user that we are * starts a simple ongoing notification to inform the user that we are
* gathering location * gathering location