Nu är jag hemma och har tillgång till kod. I TravelMapper (som inte finns på market) lyssnar jag på boot:
I AndroidManifest.xml
HTML:
<receiver android:name=".BootListener"
android:enabled="true"
android:exported="false"
android:label="BootListener">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
Och min tjänst som lyssnar på boot:
Code:
public class BootListener extends BroadcastReceiver {
private static final String TAG = "f1.tr.BootListener";
@Override
public void onReceive(Context context, Intent intent) {
if ("android.intent.action.BOOT_COMPLETED".equals(intent.getAction()) == false) {
return;
}
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
Editor editor = prefs.edit();
editor.putString(Prefs.NEXT_EXECUTION, " - ");
editor.commit();
if (prefs.getBoolean(Prefs.START_SERVICE_ON_BOOT, false) == false) {
Log.i(TAG, "Won't start service, disabled in preferences");
return;
}
Log.i(TAG, "Starting update service");
if (UpdateService.startService(context) == null) {
Log.e(TAG, "Couldn't start udpate service");
}
}
}