Soru & Cevap

Android servis uygulamayı kapatınca kendine reset alması

24.11.2020 - 01:44

Android servis uygulamayı kapatınca çalıyoken  tekrar oncreate çalıştırıyor bunu nasıl engelleye bilirim

1 Görüntülenme

2 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-83215-1466292306.jpg
farukjaa23
24.11.2020 - 04:51

Ben daha dün timer service hazırladım. Benim timerım hosttan gelen date değerine göre kalan süreyi hesaplayıp çalışıyor. Eğer service çalışıyorsa işlem yapmıyor, çalışmıyorsa hosttan yeniden veri çekip kalan üsreyi hiç bozulmadan hesaplayabiliyor. Eğer sende countDown gibi bir yapı kullanıyorsan, tavsiyem onCreate içerisinde direk olarak timer başlasın şeklinde bir ifade yerine if else şeklinde bir dallanma kullan. Ancak öyle hangi durumlarda başlayıp, hangi durumlarda çalışmamasını kontrol edebilirsin.

ufuksipor
24.11.2020 - 05:02
timer çalışıp çalışmadı bilgisi nasıl alabilirim
farukjaa23
24.11.2020 - 05:19
Timerın çalışıp çalışmadığını öğrenmek için Android 301 derslerinde boradcast receiver konusu var, o yapıyı kullandım ben.
ufuksipor
24.11.2020 - 05:38
teşekkürler hemen bakacağım
picture-83215-1466292306.jpg
farukjaa23
24.11.2020 - 03:39

Merhabalar Ufuk,

Servisin onCreate yeniden başlatıldığında çalışıp çalışmadığını kontrol edebilirsin.


 private boolean isMyServiceRunning(Class<?> serviceClass) {       ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);       for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {          if (serviceClass.getName().equals(service.service.getClassName())) {             return true;          }       }       return false;    }
 

onCreate içerisinde ise


  if (isMyServiceRunning(service.class)) {               //Çalışmaya devam etmesini istediğimizden burayı boş bırakalım.          } else {                text.setText("Started");                startService(new Intent(MainActivity.this, service.class));             }
 

şeklinde bir if else örnek olabilir. Kaynakça bırakıyorum aşağıya. Umarım faydalı olur.

https://www.tutorialspoint.com/how-to-check-if-a-service-is-running-on-android

İyi çalışmalar.

ufuksipor
24.11.2020 - 04:44
iyine ayı şekilde Ben şöyle istiyorum uygulayı açtım ve servisi başlattım uygumayı kapattım ama servisin devem etmesi ni istiyorum devam ediyor ama
ufuksipor
24.11.2020 - 04:46
on create bir daha çalıştırıyor ben çalışmasını istemiyorum çalıştırınca timer başa olıyor
ufuksipor
24.11.2020 - 04:48
desteğiniz için teşekkürler
ufuksipor
24.11.2020 - 04:52
normal telefon kullanıyorum uygulamayı demek için uygulama bilgisinde otomatik başlatma seçeneği var onu açmadan uygumayı kapatınca servis çalışmıyo?