errox Geschrieben 27. Mai 2014 Geschrieben 27. Mai 2014 Servus Jungs, ich hab ne kleine App, die im Hintergrund Zahlen hochzählt (Als eine Art Timer). Vorab: Ja ich weiss, ich könnte auch den Aktuellen Zeitstempel Nehmen und hochrechnen. Aber man kann das Datum / Die Uhrzeit verändern. Das will ich nicht. Außerdem soll Später im Sekundentakt auch was anderes passieren im Hintergrund (z.B. GPS Positionen übermitteln für eine Ortungssoftware). Nein, ich mach das nicht unerlaubt. Das ist für mich selber. Jedenfalls hab ich das mal verkleinert und ein Label gemacht, dass einfach den Freien Speicher anzeigt. public void StartClick(View v) { TextView view = (TextView)findViewById(R.id.lblFreeSpace); new AppendFileThread(v); Thread th = new Thread(new Runnable() { public void run() { while (true) { runOnUiThread(new Runnable() { @Override public void run() { long availableSpace = -1L; StatFs stat = new StatFs(Environment.getDataDirectory().getPath()); availableSpace = (long) stat.getAvailableBlocks() * (long) stat.getBlockSize(); TextView lbl = (TextView)findViewById(R.id.lblFreeSpace); lbl.setText(String.valueOf(availableSpace)); } }); try { Thread.sleep(500); } catch (InterruptedException e) { e.printStackTrace(); } } } }); th.start(); } Wenn die App im Hintergrund läuft, wird die nach ner Zeit beendet. Wie kann ich das verhindern?
Klotzkopp Geschrieben 27. Mai 2014 Geschrieben 27. Mai 2014 Wie kann ich das verhindern?Mach einen Service, keine App.
pr0gg3r Geschrieben 27. Mai 2014 Geschrieben 27. Mai 2014 Vielleicht solltest du mit Services arbeiten. (Edit: Misst, eine Sekunde zu langsam)
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden