Bazı kodları her gün (her 24 saatte) çalıştırmak istiyorum. Sorun, kullanıcının uygulamayı açmamasıdır. Uygulama açık olmadığında kod nasıl çalıştırılır?Uygulama açık olmadığında her gün kodu çalıştır
cevap
şunlardır:
- JobScheduler
(Yalnızca yukarıdaki API 21 veya için) Android bu sınıfa ekledi Buradaki belgeler için API 21, link'dur.
- JobSchedulerCompat - API 11 veya Kütüphaneden here ilgili her şeyi bulabilirsiniz
- Kullanım alarmı yöneticisi işlemek için periyodik görev
Ayrıca periyodik görevi zamanlamak için AlarmManager
kullanabilirsiniz. Bunu uygulamak için tam bir makale here yayınlanmıştır.
- Periyodik görevi zamanlamak için GCM (Google Cloud Messaging) Ağ Yöneticisi'ni kullanın.
Bunu uygulamak için bu belgelere link bir göz atabilirsiniz.
GCM Ağ Yöneticisi kullanılarak periyodik Görev için
Örnek proje düzeyi build.gradle içinde bağımlılık ekleyin.
compile 'com.google.android.gms:play-services-gcm:7.5.0'
tezahür hizmet beyan GcmTaskService
public class BackgroundTaskHandler extends GcmTaskService {
public BackgroundTaskHandler() {
}
@Override
public int onRunTask(TaskParams taskParams) {
//Your periodic code here
}
}
kadar uzanır bir java sınıf oluşturun.xml
<service
android:name=".BackgroundTaskHandler"
android:exported="true"
android:permission="com.google.android.gms.permission.BIND_NETWORK_TASK_SERVICE">
<intent-filter>
<action android:name="com.google.android.gms.gcm.ACTION_TASK_READY" />
</intent-filter>
</service>
Şimdi herhangi sınıftan periyodik görev zamanlama olarak: -
String tag = "periodic";
GcmNetworkManager mScheduler = GcmNetworkManager.getInstance(getApplicationContext());
long periodSecs = 60L;// 1 minute
PeriodicTask periodic = new PeriodicTask.Builder()
.setService(BackgroundTaskHandler.class)
.setPeriod(periodSecs)
.setTag(tag)
.setPersisted(true)
.setUpdateCurrent(true).setRequiredNetwork(com.google.android.gms.gcm.Task.NETWORK_STATE_CONNECTED)
.build();
mScheduler.schedule(periodic);
planlanan işlemleri uygulamak için yepyeni bir yol google yeni eklenen (o kadar) olmuştur sdk seviyesinde 21.
dönemsel görevleri gerçekleştirmek için daha basit (ve backported) yolu edinilebilir job scheduler kullanmaktır oyun hizmetleri: network manager. Adına rağmen, ağ ile ilgili olmayan görevleri zamanlamak yararlıdır.
Kontrol
Program bakılmaksızın ağ ve cihaz şarj durumlarının periyodik bir görev
bölüm. Eğer çeşitli yollar ve bazıları kullanabilir arka plan periyodik görevi çalıştırmak için android olarak
JobScheduler'ın 11 veya daha yüksek sürümlerinde çalışacağını sanmıyorum. Belgelere göre API 21'e eklenmiştir. –
Evet, yazım hatası oldu. Değişecek, teşekkürler. – fedepaol
- 1. AlarmManager Android Her Gün
- 2. UITableView: tableFooterView görüntülendiğinde kodu çalıştır?
- 3. Twig tarih döngüsü her gün
- 4. Her saniyede bir komut çalıştır
- 5. Chrome: Javascript kodu için otomatik çalıştır?
- 6. Her gün güncelleştirin (kod çalışıyor mu?)
- 7. her yerden açık (dosya)
- 8. Adım Sayacı: her zaman açık?
- 9. Herkese Bir Nokta Verme Her Gün
- 10. Form Gönder En İyi Uygulama Çalıştır?
- 11. Windows VB.NET Uygulama exe yönetici olarak çalıştır
- 12. Uygulama açık olduğunda PUSH gösterilmiyor
- 13. açık uygulama bağlantısı olmayan iTunes
- 14. Her gün neden bir DMARC raporu alıyorsunuz?
- 15. Flot. Zaman serisi. Her Gün Bir Kez
- 16. Olay her gün daha fazla yanıyor
- 17. Visual Studio Kodu boş bırakıldığında bölme düzenleyiciyi açık bırakın
- 18. Çerez kalıcı olmadığında MVC
- 19. Emacs/AUCTeX: şu anda açık olmayan bir dosyada komutu çalıştır
- 20. Hafıza Her uygulama havuzu
- 21. Çalıştırılmadan önce çalıştır eslint Çalıştır
- 22. Bir gün için sorar ve sonra bir sonraki açık hücre
- 23. Java8 - gün ışığından yararlanmaların şimdi açık olup olmadığını nasıl öğrenebilirim?
- 24. Benim android uygulama her gün tarih değişikliği bilgi almak için nasıl
- 25. Edit Heroku Uygulama Kodu Çevrimiçi
- 26. Alarm Saati uygulama kaynak kodu
- 27. excel vba kodu açık ve kapalı yorumlar
- 28. Android açık kaynak projesinde Face unlock kodu?
- 29. NSSearchPathForDirectoriesInDomains Uygulama Kimliği Gerçek Simgedeki Simülatör Çalıştır ve Güncelleştir Uygulaması
- 30. TCPDF QR Kodu her zaman farklıdır
http://stackoverflow.com/questions/2333680/android-schedule-action [android alarm ayarlama ait – nKn
olası yinelenen belirli günlerde yönetici] (http://stackoverflow.com/questions/5715940/setting-android-alarm-manager-on-certain-days) – Ankit