Workaround for start service bug (fix #60)

Этот коммит содержится в:
Anton Tananaev
2014-05-27 23:06:33 +12:00
родитель 97ead868cd
Коммит 5e2f35fae0
2 изменённых файлов: 6 добавлений и 13 удалений
+6 -2
Просмотреть файл
@@ -19,7 +19,6 @@ import java.text.DateFormat;
import java.util.Date; import java.util.Date;
import java.util.HashSet; import java.util.HashSet;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List;
import java.util.Set; import java.util.Set;
import android.app.ListActivity; import android.app.ListActivity;
@@ -32,7 +31,9 @@ import android.widget.ArrayAdapter;
public class StatusActivity extends ListActivity { public class StatusActivity extends ListActivity {
private static final List<String> messages = new LinkedList<String>(); private static final int LIMIT = 20;
private static final LinkedList<String> messages = new LinkedList<String>();
private static final Set<ArrayAdapter<String>> adapters = new HashSet<ArrayAdapter<String>>(); private static final Set<ArrayAdapter<String>> adapters = new HashSet<ArrayAdapter<String>>();
private static void notifyAdapters() { private static void notifyAdapters() {
@@ -46,6 +47,9 @@ public class StatusActivity extends ListActivity {
DateFormat format = DateFormat.getTimeInstance(DateFormat.SHORT); DateFormat format = DateFormat.getTimeInstance(DateFormat.SHORT);
message = format.format(new Date()) + " - " + message; message = format.format(new Date()) + " - " + message;
messages.add(message); messages.add(message);
while (messages.size() > LIMIT) {
messages.removeFirst();
}
notifyAdapters(); notifyAdapters();
} }
-11
Просмотреть файл
@@ -58,10 +58,6 @@ public class TraccarService extends Service {
PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE); PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);
wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, getClass().getName()); wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, getClass().getName());
wakeLock.acquire(); wakeLock.acquire();
}
public void onStart(Intent intent, int startId) {
StatusActivity.addMessage(getString(R.string.status_service_start));
sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this); sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
@@ -85,13 +81,6 @@ public class TraccarService extends Service {
sharedPreferences.registerOnSharedPreferenceChangeListener(preferenceChangeListener); sharedPreferences.registerOnSharedPreferenceChangeListener(preferenceChangeListener);
} }
@TargetApi(Build.VERSION_CODES.ECLAIR)
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
onStart(intent, startId);
return START_STICKY;
}
@Override @Override
public IBinder onBind(Intent intent) { public IBinder onBind(Intent intent) {
return null; return null;