Ho un problema con l'acquisizione di un WakeLock. Sembra non funzionare. Sto cercando di acquisire un FULL_WAKE_LOCK ma né il display viene abilitato né la mia app è in grado di eseguire attività.Android WakeLock
sto usando la seguente autorizzazione: android.permission.WAKE_LOCK
Il mio codice acquisiscono simile a questo:
PowerManager pm = (PowerManager) getBaseContext().getSystemService(Context.POWER_SERVICE);
wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK|PowerManager.ACQUIRE_CAUSES_WAKEUP, "My Tag");
wl.acquire();
Che cosa sto facendo di sbagliato?
Edit: aggiunto un altro bandiera ACQUIRE_CAUSES_WAKEUP ... ma nessun cambiamento nel comportamento
Edit2: Tutto quello che sto cercando di fare è, per riprodurre musica e di svegliare il mio dispositivo in alto sopra un determinato evento. La musica funziona in modo perfetto ma il dispositivo rimane nero.
sto acquisizione di esso in un anctivity perché ho un'attività impostato come ricevitore – Coxer
io non sono sicuro di aver capito. Un'attività non può essere un BroadcastReceiver poiché BroadcastReceiver è una classe astratta non un'interfaccia (nessuna eredità multipla in Java). Vuoi dire che hai un BroadcastReceiver statico privato sulla classe di attività? Tutto quello che sto dicendo è che devi attivare la sveglia su onReceive() nel BroadcastReceiver non in onCreate() dell'attività che inizi dal servizio. –