Autore Topic: Spegnimento display del dispositivo  (Letto 1800 volte)

Offline superbre1

  • Nuovo arrivato
  • *
  • Post: 1
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Hero
  • Sistema operativo:
    Windows 7
Spegnimento display del dispositivo
« il: 23 Agosto 2011, 19:19:51 CEST »
0
Salve a tutti,
Sto provando in tutti i modi a realizzare un widget per lo spegnimento del display del dispositivo tramite un bottone.
Non riesco proprio a capire come fare in modo che nel momento in cui il bottone viene premuto, il display si spenga e poi android riprenda a funzionare normalmente rimandandomi alla schermata di lock screen...
qualche suggerimento?
Vi ringrazio in anticipo

Offline Giovanni D'Addabbo

  • Utente normale
  • ***
  • Post: 163
  • Respect: +8
    • Google+
    • giovannid
    • giovanni.daddabbo
    • magoscuro
    • Mostra profilo
    • Rhubbit.it - Sviluppo app Android/iOs
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Rhubbit srl
  • Sistema operativo:
    Windows/Mac/Linux
Re:Spegnimento display del dispositivo
« Risposta #1 il: 24 Agosto 2011, 14:27:02 CEST »
0
non stai spegnendo il display ma semplicemente lo vuoi bloccare quindi...

Codice (Java): [Seleziona]
DevicePolicyManager mDPM;
mDPM.lockNow();

more info here: Device Administration | Android Developers
byeeeeeeeee

Offline w.biancaniello

  • Nuovo arrivato
  • *
  • Post: 13
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Wildfire
  • Sistema operativo:
    Windows
Re:Spegnimento display del dispositivo
« Risposta #2 il: 08 Settembre 2011, 11:26:33 CEST »
0
Salve,

ho anche io la stessa esigenza, sto sviluppando un'app che quando premo un pulsante vorrei disabilitare lo schermo.
Ho provato il codice sopra ma nn funziona.. :(

Altri suggerimenti???

Grazie

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:Spegnimento display del dispositivo
« Risposta #3 il: 08 Settembre 2011, 12:08:57 CEST »
0
cosa vuol dire "non funziona"
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline w.biancaniello

  • Nuovo arrivato
  • *
  • Post: 13
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Wildfire
  • Sistema operativo:
    Windows
Re:Spegnimento display del dispositivo
« Risposta #4 il: 08 Settembre 2011, 13:06:39 CEST »
0
Mi genera un eccezione... :(

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3487
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Spegnimento display del dispositivo
« Risposta #5 il: 08 Settembre 2011, 13:16:17 CEST »
0
Mi genera un eccezione... :(

Leggi la mia firma...

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:Spegnimento display del dispositivo
« Risposta #6 il: 08 Settembre 2011, 13:29:36 CEST »
0
appunto perché ti genera un'eccezione devi capire cosa non va...

quoto Ricky: guarda la sua firma.
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline w.biancaniello

  • Nuovo arrivato
  • *
  • Post: 13
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Wildfire
  • Sistema operativo:
    Windows
Re:Spegnimento display del dispositivo
« Risposta #7 il: 08 Settembre 2011, 14:36:18 CEST »
0
Scusatemi... sono nuovo  :-\

Allora il mio codice è
Codice (XML): [Seleziona]
public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.main);
                Button b = (Button) findViewById(R.id.button);
                b.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                                // TODO Auto-generated method stub
                                DevicePolicyManager mDPM = (DevicePolicyManager)v.getContext().getSystemService(DEVICE_POLICY_SERVICE) ;
                                mDPM.lockNow();
                        }
                });
        }

Quando lancio l'applicazione e premo il pulsante, l'app sul simulatore gerene eccezione... nel log cat vedo il seguente errore:


Codice (XML): [Seleziona]
09-08 12:11:11.077: ERROR/AndroidRuntime(336): FATAL EXCEPTION: main
09-08 12:11:11.077: ERROR/AndroidRuntime(336): java.lang.SecurityException: No active admin owned by uid 10039 for policy #3
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.os.Parcel.readException(Parcel.java:1247)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.os.Parcel.readException(Parcel.java:1235)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.app.admin.IDevicePolicyManager$Stub$Proxy.lockNow(IDevicePolicyManager.java:586)

09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.app.admin.DevicePolicyManager.lockNow(DevicePolicyManager.java:506)

09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at it.ioprogrammo.locknow.EsempioLocknowActivity$1.onClick(EsempioLocknowActivity.java:22)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.view.View.performClick(View.java:2408)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.view.View$PerformClick.run(View.java:8816)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.os.Handler.handleCallback(Handler.java:587)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.os.Handler.dispatchMessage(Handler.java:92)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.os.Looper.loop(Looper.java:123)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at android.app.ActivityThread.main(ActivityThread.java:4627)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at java.lang.reflect.Method.invokeNative(Native Method)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at java.lang.reflect.Method.invoke(Method.java:521)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)

09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
09-08 12:11:11.077: ERROR/AndroidRuntime(336):     at dalvik.system.NativeStart.main(Native Method)
09-08 12:11:11.117: WARN/ActivityManager(67):   Force finishing activity it.ioprogrammo.locknow/.EsempioLocknowActivity
09-08 12:11:11.676: WARN/ActivityManager(67): Activity pause timeout for HistoryRecord{44e96250 it.ioprogrammo.locknow/.EsempioLocknowActivity}

nn capisco eppure tutti dicono che dovrebbe funzionare.... nel manifest nn ho messo nulla....

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:Spegnimento display del dispositivo
« Risposta #8 il: 08 Settembre 2011, 14:43:00 CEST »
0
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:Spegnimento display del dispositivo
« Risposta #9 il: 08 Settembre 2011, 14:48:43 CEST »
0
credo che tu abbia bisogno di questo permesso da mettere sul manifest: USES_POLICY_FORCE_LOCK

http://developer.android.com/reference/android/app/admin/DeviceAdminInfo.html#USES_POLICY_FORCE_LOCK
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/