Her saat başı bir servis planlamak için bir AlarmManager kullanıyorum, ancak sadece ekran kilidi açıldığında ihtiyacım var, bu yüzden son kullanıcı cihazı kullanıyor. AlarmManager'ı SCREEN_ON ve SCREEN_OFF değişkenleriyle, ancak başarılı olmadan kullanmaya çalıştım. AlarmManager tekrar programını nasıl ayarlayacağımı anlayamıyorum.Android başlat servisi yalnızca ekran açıkken
-1
A
cevap
2
Hizmetinizi çalıştırmadan önce, Ekranın KAPALI veya AÇIK olduğunu kontrol edin.
KeyguardManager keyguardManager = (KeyguardManager)context.getSystemService(Context.KEYGUARD_SERVICE);
if(!keyguardManager.inKeyguardRestrictedInputMode()) {
// Code here.
}
+0
Evet, yararlıdır. Yani, ekran açıldığında hemen hizmeti başlatabilir miyim? AlarmManager'dan saatte –
+0
yanıt alır mısınız? –
+0
Evet ... Her zaman yanıt alırım –
İlgili konular
- 1. Yönlendirme Kilidi açıkken ve uygulama yalnızca Dikey
- 2. Arama kayıt/işleme servisi! - Android
- 3. Gelen aramada uygulamayı başlat (android)
- 4. facebook + android: Yalnızca tam ekran opak faaliyetleri talep edebilir oryantasyon
- 5. görünüm cihazındaki tüm öğeleri başlat android
- 6. Bir android cihazda ekran durumunu nasıl öğrenebilirim?
- 7. START_STICKY ile Android servisi, öldürme uygulamasında çöküyor
- 8. Sensöre Android ekran yönlendirmesi
- 9. Android ekran çözünürlükleri
- 10. Android wavehare dokunmatik ekran
- 11. Android Ekran Yakalama
- 12. Android Ekran Zaman aşımı
- 13. Android PayPalActivity Tam Ekran
- 14. Android Çoklu Ekran Uygulaması
- 15. Ekran görüntüsünü belirleme Android
- 16. Android GridLayout taşan ekran
- 17. Android ekran çözünürlüğü
- 18. webview tam ekran android
- 19. Android programlama - ekran çözünürlüğü
- 20. PostgreSQL'i yeniden başlat Yeniden başlat
- 21. Python Brainf *** - Bugs açıkken hatalar
- 22. dizi öğelerini, ekran yalnızca en düşük değeri
- 23. Yalnızca ekran/görünüm nasıl kullanılır? Twproject Gantt?
- 24. Ekran Kamera yalnızca Kamera Niyet alamıyorsanız android Sadece WebView'da Niyet? Android 5+ ve 6+
- 25. Kritik Bölüm'ü yalnızca bir kez bir işlem için başlat
- 26. Ekran görüntüsünü tespit et Android 4.0+ +
- 27. Açık protobuf servisi
- 28. vaadin - modal iletişim penceresi açıkken yürütme gecikmesi
- 29. Akıştan işlem başlat
Bildiğim kadarıyla, eğer kullanıcı cihazı kullanıyorsa, AlarmManager sınıfını ayarlayamazsınız. Alarmı sadece zamana göre ayarlayabilir ve cihazın ekranının aktif veya devre dışı olduğunu kontrol etmeniz gerekir. Alternatif olarak, hizmetiniz çalışmaya başladığında ekranı uyandırabilirsiniz. Bu özellikleri kullanarak, startActivity() öğesini çağırmadan önce onReceive() 'da bir WakeLock edinmeniz ve kullanıcı etkinliğinize yanıt verdikten sonra bu WakeLock ürününü serbest bırakmanız gerekir. –