Autore Topic: Controllare il WakeLock del telefono  (Letto 4458 volte)

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Controllare il WakeLock del telefono
« il: 17 Maggio 2010, 15:56:02 CEST »
+2
Con questo snippet è possibile controllare il WakeLock del telefono ;)
Codice (Java): [Seleziona]
public class WakeLockSnippet extends Activity {
        private PowerManager.WakeLock mWakeLock = null;

        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.main);

                PowerManager pm = (PowerManager) getSystemService(POWER_SERVICE);
                mWakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "MyTAG");
                mWakeLock.setReferenceCounted(false);

                mWakeLock.acquire();
        }
       
        @Override
        public void onResume() {
                super.onResume();
                // It's okay to double-acquire this because we are not using it
                // in reference-counted mode.
                mWakeLock.acquire();
        }

        @Override
        public void onPause() {
                super.onPause();
                // Don't release the wake lock if it hasn't been created and acquired.
                if (mWakeLock != null && mWakeLock.isHeld()) {
                        mWakeLock.release();
                }
        }
}

Permessi per il Manifest:
Codice (XML): [Seleziona]
        <uses-permission
                android:name="android.permission.WAKE_LOCK" />

Flag ValueCPUScreenKeyboard
PARTIAL_WAKE_LOCKOn*OffOff
SCREEN_DIM_WAKE_LOCKOnDimOff
SCREEN_BRIGHT_WAKE_LOCKOnBrightOff
FULL_WAKE_LOCKOnBrightBright
*If you hold a partial wakelock, the CPU will continue to run, irrespective of any timers and even after the user presses the power button. In all other wakelocks, the CPU will run, but the user can still put the device to sleep using the power button.

Link alla doc: PowerManager | Android Developers
« Ultima modifica: 17 Maggio 2010, 16:49:30 CEST da JD »
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline ScarfaceIII

  • Utente junior
  • **
  • Post: 112
  • Respect: +13
    • raferalston12
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    GNU/Linux, Ubuntu 10.04 / Windows 7
Re:Controllare il WakeLock del telefono
« Risposta #1 il: 17 Maggio 2010, 22:38:49 CEST »
0
Flag ValueCPUScreenKeyboard
PARTIAL_WAKE_LOCKOn*OffOff
SCREEN_DIM_WAKE_LOCKOnDimOff
SCREEN_BRIGHT_WAKE_LOCKOnBrightOff
FULL_WAKE_LOCKOnBrightBright
*If you hold a partial wakelock, the CPU will continue to run, irrespective of any timers and even after the user presses the power button. In all other wakelocks, the CPU will run, but the user can still put the device to sleep using the power button.

Link alla doc: PowerManager | Android Developers

Posso chiamarlo il primo "snippet ad personam"? beh che siamo in un paese in cui "ad personam" è un po' inflazionato come termine...

grazie mille, cmq scusa ma sono tardo e non capisco la tabella ivi riportata: quale delle scelte dovrei usare se voglio che lo schermo rimanga attivo e non si blocchi? sono indeciso tra DIM o BRIGHT...da quel che capisco DIM dovbrebbe togliere un po' di luminosità allo schermo, ma non inficiare l'uso dell'applicazione, right?

grazie mille millerrimo!

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Re:Controllare il WakeLock del telefono
« Risposta #2 il: 17 Maggio 2010, 22:45:30 CEST »
0
Ciao, hai capito bene: DIM (fioco, pallido, debole) attenua la luminosità del display senza comunque mandare in sleep il telefono o spegnere il display. Diciamo che con questo non scarichi subito la batteria :). La luminosità ritorna alle impostazioni di default quando interagisci nuovamente col telefono.

Per la tua applicazione ti consiglio quindi SCREEN_DIM_WAKE_LOCK.
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline ScarfaceIII

  • Utente junior
  • **
  • Post: 112
  • Respect: +13
    • raferalston12
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    GNU/Linux, Ubuntu 10.04 / Windows 7
Re:Controllare il WakeLock del telefono
« Risposta #3 il: 18 Maggio 2010, 14:56:08 CEST »
0
Ciao bello, ho tabbozzato l'applicazione come consigliato...ma...no-buono...l'applicazione va...va...scende la luminosità dello schermo...poi credo dovrebbe subentrare il blocco dello schermo e...per non sbagliare si blocca l'intera applicazione!!!  :-o o_O ???

consigli? suggerimenti? spiegazioni? preghiere?  o_O

grazie mille dell'aiuto, intanto provo per sport a mettere BRIGHT o FULL...boh!

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Re:Controllare il WakeLock del telefono
« Risposta #4 il: 18 Maggio 2010, 14:57:55 CEST »
0
logcat di quando si blocca?
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline ScarfaceIII

  • Utente junior
  • **
  • Post: 112
  • Respect: +13
    • raferalston12
    • Mostra profilo
  • Dispositivo Android:
    Nexus One
  • Sistema operativo:
    GNU/Linux, Ubuntu 10.04 / Windows 7
Re:Controllare il WakeLock del telefono
« Risposta #5 il: 18 Maggio 2010, 15:26:40 CEST »
0
Scrivo sul logcat la continua acquisizione degli accelerometri e ho notato proprio grazie a questo che l'acquisizione finisce poco dopo che la luminosità cala.
Ad ogni modo ora marco come risolto perchè mettendo BRIGHT la cosa si risolve..."signore e signori benvenuti ad una nuova puntata di Mistero" (cit.)...

EDIT: lol...era già un topic risolto! XD

Offline junior87

  • Nuovo arrivato
  • *
  • Post: 27
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    ubuntu win7
Re:Controllare il WakeLock del telefono
« Risposta #6 il: 25 Ottobre 2011, 19:19:57 CEST »
0
Salve ragazzi


vi volevo chiedere una cosa... io devo sviluppare un applicazione che praticamente in poche parole, qnd quest'app è in stato attivo toccando il tasto lock deve lasciare il touch disattivo e lo screen acceso in modo ke se stai vedendo un video il tel. non và in stato di standby , ma t permette di visualizzare ancora il video con il touch disattivato... sto utilizzando il lock con stato:

newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK,"provaActivity" );

e poi sto provando tutto su l'emulatore di android, ma toccando il tasto di standby ke penso sia quello del lock, l'emulatore va in stanby e la cosa strana è: toccando il tasto menù o home il tel. l'emulatore riparte...
la prima domanda è questa app. la prosso provare con l'emulatore?? visto ke premendo il tasto home o menù riparte l'emulatore...