Jump to content
Sign in to follow this  
mat117

Custom Screensaver su EMUI

Recommended Posts

Da qualche versione di Android è stato introdotto il "daydream", ovvero una sorta di screensaver interattivo che viene attivato durante la carica del dispositivo. Gli sviluppatori possono creare degli screensaver custom, accessibili nella sezione "display" delle impostazioni del dispositivo.

Purtroppo alcune aziende limitano parecchio questa funzione nelle loro interfacce personalizzate, e un esempio è sicuramente la EMUI di Honor/Huawei dove è possibile solo selezionare un semplice slideshow fotografico. Esiste però una guida su XDA che permette di impostare questi screensaver personalizzati proprio sui dispositivi Huawei!

IMPORTANTE: La procedura descritta in questa guida presenta operazioni complesse che, se eseguite in maniera scorretta, potrebbero danneggiare il vostro device. Si consiglia l’esecuzione solo da utenti che abbiano maturato una buona esperienza in ambito modding. Lo staff di GizChina.it non si riterrà responsabile per eventuali danni al dispositivo.

Passiamo alla guida: seguite queste sezioni in ordine

Installazione di ADB e driver (se non già fatto)

  1. Please login or register to see this link.

  2. installare i driver sfruttando HiSuite (programma gestione telefono di Huawei) e verificare che il PC riconosce il telefono;
  3. sul telefono attivare la modalità sviuppatore: impostazioni->info sul dispositivo-> 7 tap sulla sezione "numero build" finché non vi esce un messaggio del tipo "ora sei uno sviluppatore". Comparirà nelle impostazioni un menù sviluppatore;
  4. entrare nel menù sviluppatore e abilitare il debug USB e collegare il telefono al pc;
  5. avviate una finestra di comando (potete cercare cmd.exe);
  6. digitando "adb devices", se tutto va bene, dovrebbe comparirvi a video il numero seriale del vostro smartphone

Impostazione dello screensaver:

  1. Attivare daydream da impostazioni->display e attivare il toggle daydream;
  2. scaricare gli screensaver preferiti dal play store e installarli;
  3. ora occorre trovare il nome del processo che viene avviato quando installate lo screensaver custom, e ciò non può essere fatto direttamente nella EMUI.

    Esistono 2 metodi, uno semplice ma non sempre preciso e funzionante, e l'altro più complesso ma che ti permette di trovare sicuramente il nome del processo:

Metodo 1: usare  l'app My android tools

  1. Scaricare questa app dal play store:

    Please login or register to see this link.

  2. nell'app aprire la sidebar a sinistra e tappare su "service" sotto il menù "component info". Questa funzione fornirà la lista delle app installate e i loro relativi servizi associati. 
  3. trovare l'app dello screensaver installato e analizzare i nomi dei servizi. Cercare quei nomi che contengono parole tipo "daydream" o "screensaver". Ad esempio per la app Google clock il nome del servizio necessario è "com.android.deskclock.Screensaver" oppure per Lucid : " de.j4velin.ultimateDayDream.DreamWrapper" Trovati questi nomi è possibile procedere con l'attivazione degli screensaver.

Metodo 2 (per utenti esperti): analizzare il file Manifest di Android:

  1. Scaricare una qualsiasi app in grado di leggere i file manifest, ad esempio

    Please login or register to see this link.

  2. trovare il file manifest della app dello screensaver scaricata e aprirlo
  3. cercare il tag <service> che include come "permission" la seguente:"android.permission.BIND_DREAM_SERVICE" come nelle foto in esempio
  4. una volta identificata la linea, copiare la sezione "name", questo sarà il nome che serve per impostare daydream custom. 

 

Please login or register to see this spoiler.

Impostazione con ADB dello screensaver:

  1. aprire la finestra di comando e digitare:
    adb shell
  2. inviare questo comando: 
    settings put secure screensaver_components YOUR.CUSTOM.SCREENSAVER.COMPONENT
     N.B sostituire la parte in maiuscolo seguendo questo esempio:

per google clock abbiamo come nome trovato: com.android.deskclock.Screensaver

  • la prima parte sarà composta dal nome proprio del servizio: es com.android.deskclock
  • la seconda dall'ultima parola del nome trovato: es Screensaver
  • quindi formattate l'ultima parte del comando così: "com.android.deskclock/.Screensaver". In sostanza occorre inserire uno / tra la penultima parola e il punto che precede l'ultima. 

Inviato il comando non resta che mettere in carica il dispositivo e, se avete eseguito i passaggi corretti, dovrebbe avviarsi lo screensaver selezionato!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×