Forse era quello il mio problema
Inviato dal mio HUAWEI VNS-L31 usando Androidiani App
Forse era quello il mio problema
Inviato dal mio HUAWEI VNS-L31 usando Androidiani App
Pulsante Nascondi barra di navigazione - Metodo 3
con Rom Control v2
res/xml/ui_prefs.xml
res/values/strings.xmlcodice:<PreferenceCategory android:title="@string/navbar_mod_title"> <SwitchPreference android:defaultValue="1" android:key="hide_virtual_key" android:summaryOff="@string/button_hidden" android:summaryOn="@string/button_visible" android:title="@string/navbar_mod" /> </PreferenceCategory>
codice:<string name="button_hidden">Button is hidden</string> <string name="button_visible">Button is visible</string> <string name="navbar_mod">Enable Button to hide navbar</string> <string name="navbar_mod_title">Navigation bar Mods</string>
con 6th gear rom control v2.1
codice:<com.wubydax.romcontrol.v2.prefs.MySwitchPreference android:defaultValue="1" android:key="hide_virtual_key" android:summaryOff="@string/button_hidden" android:summaryOn="@string/button_visible" android:title="@string/navbar_mod" />
Ultima modifica di millo1978; 24-05-17 alle 12:32
App musicale visibile e utilizzabile nel bloccaschermo
Alcuni lettori musicali possono essere visualizzati e comandati anche dal bloccaschermo (es: lettore Huawei, Google Music, e pochi altri)...
altri no.
Con questa modifica possiamo editare la chiave di registro interessata (white_music_for_keyguard).
con Rom control v2
https://forum.xda-developers.com/sho...postcount=1118
res/xml/ui_prefs.xml
codice:<com.wubydax.romcontrol.prefs.IntentDialogPreference includeSearch="true" setSeparatorString=";" android:key="white_music_for_keyguard" android:title="@string/choose_app" />
con 6th gear rom control v2.1
https://forum.xda-developers.com/and...-devs-t3411916
res/xml/ui_prefs.xml
Ovviamente in res/values/strings.xml andranno inserite le stringhe indicate.codice:<com.wubydax.romcontrol.v2.prefs.IntentDialogPreference android:key="white_music_for_keyguard" android:title="@string/choose_app" app:intentSeparator=";" app:showSearch="true"/>
Ultima modifica di millo1978; 24-05-17 alle 12:28
Stile Caratteri
Come abilitare il menu (Impostazioni --> Display --> Stile carattere)?
Senza Root (FONTE):
codice:adb shell settings put system hw_hide_font_style false
Con Root (da Terminale):
codice:suCaratteri da scaricare ed installare:codice:settings put system hw_hide_font_style false
https://forum.xda-developers.com/p9/...3453557/page11
Testato da me su Android 6.
Interruttore per abilitare o disabilitare la visualizzazione di questo menu
Con Kernel Adiutor
inserire un nome
inserire una descizione
digitare i seguenti due codici
codice:#!/system/bin/sh result=$(settings get system hw_hide_font_style) if [[ $result == "true" ]]; then echo 1 else echo 0 ficodice:#!/system/bin/sh status=$1 if [[ $status == 1 ]]; then settings put system hw_hide_font_style true else settings put system hw_hide_font_style false fi
Ultima modifica di millo1978; 06-06-17 alle 14:34
Pulsante per nascondere la Barra di navigazione
Metodo 4:
finalmente sono riuscito ad abilitare la funzione, così com'era in origine, cioè prima che Huawei nascondesse l'interruttore.
Settings
smali\com\android\settings\VirtualKeySettings.smali
Modificare :cond_58 nel seguente modocodice:.method private initVirtualKeyStatus()V .locals 5 const/4 v1, 0x1 const/4 v2, 0x0 const-class v0, Lcom/android/settings/HwCustVirtualKeySettings; new-array v3, v1, [Ljava/lang/Object; aput-object p0, v3, v2 invoke-static {v0, v3}, Lcom/huawei/cust/HwCustUtils;->createObj(Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Lcom/android/settings/HwCustVirtualKeySettings; iput-object v0, p0, Lcom/android/settings/VirtualKeySettings;->mHwCustVirtualKeySettings:Lcom/android/settings/HwCustVirtualKeySettings; invoke-static {}, Lcom/android/settings/Utils;->isChinaArea()Z move-result v0 if-eqz v0, :cond_22 iget-object v0, p0, Lcom/android/settings/VirtualKeySettings;->mHwCustVirtualKeySettings:Lcom/android/settings/HwCustVirtualKeySettings; if-eqz v0, :cond_2e iget-object v0, p0, Lcom/android/settings/VirtualKeySettings;->mHwCustVirtualKeySettings:Lcom/android/settings/HwCustVirtualKeySettings; invoke-virtual {v0}, Lcom/android/settings/HwCustVirtualKeySettings;->isFrontFingerPrint()Z move-result v0 if-eqz v0, :cond_2e :cond_22 iget-object v0, p0, Lcom/android/settings/VirtualKeySettings;->mHwCustVirtualKeySettings:Lcom/android/settings/HwCustVirtualKeySettings; if-eqz v0, :cond_58 iget-object v0, p0, Lcom/android/settings/VirtualKeySettings;->mHwCustVirtualKeySettings:Lcom/android/settings/HwCustVirtualKeySettings; invoke-virtual {v0}, Lcom/android/settings/HwCustVirtualKeySettings;->isShowNavigationBarSwitch()Z move-result v0 if-eqz v0, :cond_58 :cond_2e const-string v0, "virtual_key" invoke-virtual {p0, v0}, Lcom/android/settings/VirtualKeySettings;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference; move-result-object v0 check-cast v0, Landroid/preference/SwitchPreference; iput-object v0, p0, Lcom/android/settings/VirtualKeySettings;->mSwitchPreference:Landroid/preference/SwitchPreference; iget-object v3, p0, Lcom/android/settings/VirtualKeySettings;->mSwitchPreference:Landroid/preference/SwitchPreference; invoke-virtual {p0}, Lcom/android/settings/VirtualKeySettings;->getActivity()Landroid/app/Activity; move-result-object v0 invoke-virtual {v0}, Landroid/app/Activity;->getContentResolver()Landroid/content/ContentResolver; move-result-object v0 const-string v4, "hide_virtual_key" invoke-static {v0, v4, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I move-result v0 if-lez v0, :cond_56 move v0, v1 :goto_4b invoke-virtual {v3, v0}, Landroid/preference/SwitchPreference;->setChecked(Z)V iget-object v0, p0, Lcom/android/settings/VirtualKeySettings;->mSwitchPreference:Landroid/preference/SwitchPreference; iget-object v1, p0, Lcom/android/settings/VirtualKeySettings;->mPreferenceChangedListener:Landroid/preference/Preference$OnPreferenceChangeListener; invoke-virtual {v0, v1}, Landroid/preference/SwitchPreference;->setOnPreferenceChangeListener(Landroid/preference/Preference$OnPreferenceChangeListener;)V :goto_55 return-void :cond_56 move v0, v2 goto :goto_4b :cond_58 const-string v0, "virtual_key" invoke-virtual {p0, v0}, Lcom/android/settings/VirtualKeySettings;->removePreference(Ljava/lang/String;)V const/4 v0, 0x0 iput-object v0, p0, Lcom/android/settings/VirtualKeySettings;->mSwitchPreference:Landroid/preference/SwitchPreference; goto :goto_55 .end method
In poche parole...codice:if-eqz v0, :cond_2e
cond_58 ha del codice che nasconde l'interruttore (removePreference), mentre cond_2e ha il codice che mostra l'interruttore ed abilita il funzionamento.
Immagini:
Launcher
Percorso:
HwLauncher6
smali\com\huawei\android\launcher\Settings.smali
Griglia 5x5
Cercare 4x4,4x5
ci saranno tre risultati
modificarli tutti con 4x4,4x5,5x5
codice:[...] .field private static final DEFAULT_CELL_OPTIONS:Ljava/lang/String; = "4x4,4x5,5x5" [...] const-string v3, "4x4,4x5,5x5" [...] const-string v8, "4x4,4x5,5x5" [...]
Rotazione
Modificare v1 con v2codice:# direct methods .method static constructor <clinit>()V .locals 4 const/4 v3, -0x1 const/4 v2, 0x1 const/4 v1, 0x0 [...] sput-boolean v1, Lcom/huawei/android/launcher/Settings;->sOrientationEnable:Z [...]
Ricompilarecodice:sput-boolean v2, Lcom/huawei/android/launcher/Settings;->sOrientationEnable:Z
flashare con TWRP
cancellare i dati dell'app per applicare le modifiche
Lettore musicale nella schermata Bloccaschermo
Metodo per chi è capace di compilare con smali/baksmali
Percorso:
Keyguard.apk
smali\com\android\huawei\music\HwMusic.smali
Troviamo questo
Possiamo aggiungere tutte le app musicali che vogliamocodice:.method private isSupportMusic(Ljava/lang/String;)Z .locals 2 .param p1 # Ljava/lang/String; const-string v0, "com.android.mediacenter" invoke-virtual {v0, p1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z move-result v0 if-nez v0, :cond_1e const-string v0, "com.google.android.music" invoke-virtual {v0, p1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z move-result v0 if-nez v0, :cond_1e ## QUI POSSIAMO AGGIUNGERE TUTTE LE APP MUSICALI CHE VOGLIAMO, SEGUENDO L'ESEMPIO DELLE 4 RIGHE PRECEDENTI iget-object v0, p0, Lcom/android/huawei/music/HwMusic;->mHwCustHwMusic:Lcom/android/huawei/music/HwCustHwMusic; if-eqz v0, :cond_20 iget-object v0, p0, Lcom/android/huawei/music/HwMusic;->mHwCustHwMusic:Lcom/android/huawei/music/HwCustHwMusic; iget-object v1, p0, Lcom/android/huawei/music/HwMusic;->mContext:Landroid/content/Context; invoke-virtual {v0, v1, p1}, Lcom/android/huawei/music/HwCustHwMusic;->isPackageInWhiteMusicList(Landroid/content/Context;Ljava/lang/String;)Z move-result v0 if-eqz v0, :cond_20 :cond_1e const/4 v0, 0x1 :goto_1f return v0 :cond_20 const/4 v0, 0x0 goto :goto_1f .end method
Per testare il funzionamento ho aggiunto VLC e Pi Music Player
La modifica funziona perfettamente!codice:const-string v0, "org.videolan.vlc" invoke-virtual {v0, p1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z move-result v0 if-nez v0, :cond_1e const-string v0, "com.Project100Pi.themusicplayer" invoke-virtual {v0, p1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z move-result v0 if-nez v0, :cond_1e
Riavvio avanzato - Advanced Reboot Menu
FONTE
Ottenere il Menu di Riavvio avanzato non è semplice, modificando il service.jar ...
Per fortuna ci ha pensato daxgirl a creare un'app che effettua le operazioni richieste.
I ringraziamenti sono d'obbligo!
L'app non consuma se non viene usata... ed anche quando viene usata il consumo è irrisorio!
daxgirl, che ha creato l'app per Lollipop, ci ha dato la possibilità di usare il codice sorgente...
in questo modo si ha la possibilità di creare un'app che funzioni correttamente su qualsiasi versione del sistema Android... basta solo apportare qualche modifica al codice.
E' richiesto Android Studio su Windows.
Una volta importato il codice ed effettuati tutti gli aggiornamenti che Android Studio richiede, siamo pronti a lavorare.
Cosa ho modificato per funzionare su Android 6.0?
(lo stesso vale per Android 7)
il file build.gradle
il file DialogRebootFragment.java
il file strings.xml
Nel build.gradle ho impostato la versione 23 per Marshmallow, al posto della 21 che è per Lollipop.
Poi ho modificato anche la versione del Tool, come proposto dall'Android Studio.
Nel DialogRebootFragment ho dovuto effettuare qualche modifica, dato che il riavvio rapido e la modalità download on funzionavano.
Ho inseritoal posto dicodice:busybox killall zygoteper far funzionare il Riavvio rapido.codice:busybox killall system_server
Ho inseritoal posto dicodice:pm.reboot("bootloader");per far funzionare la modalità Download.codice:pm.reboot("download");
Ho anche nascosto l'icona che non mi piaceva tanto accanto al titolo col simbolo "//"
Ho creato le traduzioni per Italiano, Tedesco, Francese e Spagnolocodice:builder.setTitle(R.string.dialog_title) // .setIcon(R.mipmap.ic_launcher)
(immagini solo dimostrative... le traduzioni le ho migliorate dopo aver fatto gli screenshots...ma sono ancora migliorabili)...
Si possono aggiungere tutte le traduzioni che si vogliono... l'app è facilmente traducibile.
Immagini:
Spoiler:
Ultima modifica di millo1978; 24-06-17 alle 15:42
Qualcuno può elencare (o scrivere) una guida su come decompilare in smali?
Inviato dal mio HUAWEI VNS-L31 usando Androidiani App
https://www.androidiani.com/forum/sh...d.php?t=537480
Qui ho scritto delle indicazioni...
Con Baksmali Manager si fa tutto facilmente.