Visualizzazione stampabile
-
1 allegato(i)
Quote:
Originariamente inviato da
nicola78
Si esatto le linee con il :goto sono superflue ma dovrrebbe funzionare anche con esse
C'è da dire anche che una volta impostato un colore differente ,bisogna aspettare che il dispositivo riceva il segnale per ottenere il cambiamento quindi ciò può dipendere anche dal campo, a volte a me capita che il cambiamento avvenga subito atre volte che cambi dopo qualche secondo altre volte è passato anche qualche minuto.
Mi sembra strano che la guida completa non funzioni, mi fa pensare che magari c'è qualcosa che non va nel SecSettings
Detto questo veniamo ai tuoi codici:
Se non vuoi la funzione random i metodi li puoi impostare anche in questo modo
codice:
.method set_signal_color()V
.locals 5
iget-object v1, p0, Lcom/android/systemui/statusbar/SignalClusterView;->mMobile:Landroid/widget/ImageView;
invoke-virtual {v1}, Landroid/widget/ImageView;->getContext()Landroid/content/Context;
move-result-object v1
invoke-virtual {v1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "signal_color"
const v3, -0x1
invoke-static {v1, v2, v3}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v1
iput v1, p0, Lcom/android/systemui/statusbar/SignalClusterView;->mSignalColor:I
return-void
.end method
però qui
codice:
.line 208
iget-object v4, p0, Lcom/android/systemui/statusbar/SignalClusterView;->mMobile:Landroid/widget/ImageView;
iget v5, p0, Lcom/android/systemui/statusbar/SignalClusterView;->mMobileStrengthId:I
invoke-virtual {v4, v5}, Landroid/widget/ImageView;->setImageResource(I)V
devi aggiungere solo cosi
codice:
.line 208
iget-object v4, p0, Lcom/android/systemui/statusbar/SignalClusterView;->mMobile:Landroid/widget/ImageView;
iget v5, p0, Lcom/android/systemui/statusbar/SignalClusterView;->mMobileStrengthId:I
invoke-virtual {v4, v5}, Landroid/widget/ImageView;->setImageResource(I)V
iget v11, p0, Lcom/android/systemui/statusbar/SignalClusterView;->mSignalColor:I
sget-object v12, Landroid/graphics/PorterDuff$Mode;->MULTIPLY:Landroid/graphics/PorterDuff$Mode;
invoke-virtual {v4, v11, v12}, Landroid/widget/ImageView;->setColorFilter(ILandroid/graphics/PorterDuff$Mode;)V
Piu tardi mi riguardo il SecSettings, buona giornata
Ciao Nicola, anche cosi il risultato è lo stesso!
Nel settings io ho allungato un po il brodo inserendo anche le opzioni per le icone home, lucchetto, sshot.
Allegato 125145
Se gli vuoi dare uno sguardo ti passo il display.smali DisplaySettings.smali.zip
Per oggi ti saluto qui.
Ci aggiorniamo....buona giornata anche a te e grazie!
-
1 allegato(i)
Quote:
Originariamente inviato da
rattlehead
Ciao Nicola, anche cosi il risultato è lo stesso!
Nel settings io ho allungato un po il brodo inserendo anche le opzioni per le icone home, lucchetto, sshot.
Allegato 125145
Se gli vuoi dare uno sguardo ti passo il display.smali
DisplaySettings.smali.zip
Per oggi ti saluto qui.
Ci aggiorniamo....buona giornata anche a te e grazie!
Il tuo DisplaySettings.smali sembra ok , in questo non hai messo le funzioni per il random giusto?
Con questo DisplaySettings non ti funziona solo il cambio colore per le icone segnale?
Ti passo i due file per il SystemUI senza random Allegato 125170 fammi sapere se funziona
-
Quote:
Originariamente inviato da
nicola78
grazie del consiglio,sdk già aggiornato ad api21.
se funziona riporterò un feed,grazie ancora
-
Quote:
Originariamente inviato da
nicola78
Il tuo DisplaySettings.smali sembra ok , in questo non hai messo le funzioni per il random giusto?
Con questo DisplaySettings non ti funziona solo il cambio colore per le icone segnale?
Ti passo i due file per il SystemUI senza random
Allegato 125170 fammi sapere se funziona
Sera carissimo!!
No nessuna funzione random.
Si esatto....quelle più ovviamente le altre tre icone a cui ancora devo mettere le mani nel systemUI.
Grazie infinite....ora provo!!
Edit. Mi da errori in compilazione nelle chiamate alle funzioni. set_wifi_color(Landroid/content/Context;)V
codice:
[89,1] regCount does not match the number of arguments of the method
[93,1] regCount does not match the number of arguments of the method
[95,4] mismatched tree node: I_STATEMENT_FORMAT35c_METHOD expecting I_CATCHES
[97,4] mismatched tree node: I_STATEMENT_FORMAT10x expecting <UP>
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file: /home/rattlehead/SystemUI/smali/com/android/systemui/statusbar/SignalClusterView$SettingsObserver.smali
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexFileBuilder.java:45)
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexFileBuilder.java:33)
at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuilder.java:66)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:50)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:37)
at brut.androlib.Androlib.buildSourcesSmali(Androlib.java:257)
at brut.androlib.Androlib.buildSources(Androlib.java:214)
at brut.androlib.Androlib.build(Androlib.java:205)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
codice:
[761,1] regCount does not match the number of arguments of the method
[763,1] regCount does not match the number of arguments of the method
[763,22] mismatched tree node: Lcom/android/systemui/statusbar/SignalClusterView; expecting I_CATCHES
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file: /home/rattlehead/SystemUI/smali/com/android/systemui/statusbar/SignalClusterView.smali
.....
Hai dichiarato una nuova variabile mContext:Landroid/content/Context; ma poi non l'hai utilizzata! ???
-
1 allegato(i)
Quote:
Originariamente inviato da
rattlehead
Sera carissimo!!
No nessuna funzione random.
Si esatto....quelle più ovviamente le altre tre icone a cui ancora devo mettere le mani nel systemUI.
Grazie infinite....ora provo!!
Edit. Mi da errori in compilazione nelle chiamate alle funzioni. set_wifi_color(Landroid/content/Context;)V
codice:
[89,1] regCount does not match the number of arguments of the method
[93,1] regCount does not match the number of arguments of the method
[95,4] mismatched tree node: I_STATEMENT_FORMAT35c_METHOD expecting I_CATCHES
[97,4] mismatched tree node: I_STATEMENT_FORMAT10x expecting <UP>
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file: /home/rattlehead/SystemUI/smali/com/android/systemui/statusbar/SignalClusterView$SettingsObserver.smali
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexFileBuilder.java:45)
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexFileBuilder.java:33)
at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuilder.java:66)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:50)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:37)
at brut.androlib.Androlib.buildSourcesSmali(Androlib.java:257)
at brut.androlib.Androlib.buildSources(Androlib.java:214)
at brut.androlib.Androlib.build(Androlib.java:205)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
codice:
[761,1] regCount does not match the number of arguments of the method
[763,1] regCount does not match the number of arguments of the method
[763,22] mismatched tree node: Lcom/android/systemui/statusbar/SignalClusterView; expecting I_CATCHES
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file: /home/rattlehead/SystemUI/smali/com/android/systemui/statusbar/SignalClusterView.smali
.....
Hai dichiarato una nuova variabile mContext:Landroid/content/Context; ma poi non l'hai utilizzata! ???
La variabile mContext la inserii quando iniziai a fare delle prove poi mi sono dimenticato di toglierla
Prova con questi Allegato 125193 con questi non dà errori di compilazione(testato) e funziona anche il cambio colore(testato)
a questo punto è per forza il SecSettings più tardi controllo meglio
-
Quote:
Originariamente inviato da
nicola78
La variabile mContext la inserii quando iniziai a fare delle prove poi mi sono dimenticato di toglierla
Prova con questi
Allegato 125193 con questi non dà errori di compilazione(testato) e funziona anche il cambio colore(testato)
a questo punto è per forza il SecSettings più tardi controllo meglio
Confermo tutto. Come rientro stasera vedo anche io di ridare uno sguardo al settings.
Buona giornata!
-
Quote:
Originariamente inviato da
rattlehead
Confermo tutto. Come rientro stasera vedo anche io di ridare uno sguardo al settings.
Buona giornata!
Ho ridato uno sguardo al tuo DisplaySettings, e ho notato qualcosa nel .method public onPreferenceChange(Landroid/preference/Preference;Ljava/lang/Object;)Z
codice:
move-result-object v2
const-string v3, "clock_color"
invoke-static {v2, v3, v1}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z
goto/16 :goto_4
:cond_1a
const-string v2, "quick_launch"
invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_1b <---primo cond_1b
.line 1069
check-cast p2, Ljava/lang/String;
invoke-static {p2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
.line 1071
:try_start_3
invoke-virtual {p0}, Lcom/android/settings/DisplaySettings;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "quick_launch_app"
invoke-static {v1, v2, v0}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z
.line 1073
new-instance v0, Landroid/content/Intent;
const-string v1, "android.settings.QUICKLAUNCH_CHANGED"
invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
.line 1074
invoke-virtual {p0}, Lcom/android/settings/DisplaySettings;->getActivity()Landroid/app/Activity;
move-result-object v1
invoke-virtual {v1, v0}, Landroid/app/Activity;->sendBroadcast(Landroid/content/Intent;)V
.line 1075
const-string v0, "DisplaySettings"
const-string v1, "android.settings.QUICKLAUNCH_CHANGED is broadcasted"
invoke-static {v0, v1}, Landroid/util/Log;->secD(Ljava/lang/String;Ljava/lang/String;)I
:try_end_3
.catch Ljava/lang/NumberFormatException; {:try_start_3 .. :try_end_3} :catch_3
goto/16 :goto_4
.line 1077
:catch_3
move-exception v0
.line 1078
const-string v1, "DisplaySettings"
const-string v2, "could not persist quick launch setting"
invoke-static {v1, v2, v0}, Landroid/util/Log;->secE(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto/16 :goto_4
qui manca un richiamo :cond_
const-string v2, "key_backlight"
invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_1b <---secondo cond_1b
.line 1081
check-cast p2, Ljava/lang/String;
invoke-static {p2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
.line 1083
:try_start_4
invoke-virtual {p0}, Lcom/android/settings/DisplaySettings;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "key_backlight_timeout"
invoke-static {v1, v2, v0}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z
:try_end_4
.catch Ljava/lang/NumberFormatException; {:try_start_4 .. :try_end_4} :catch_4
goto/16 :goto_4
.line 1085
:catch_4
move-exception v0
.line 1086
const-string v1, "DisplaySettings"
const-string v2, "could not persist key backlight setting"
invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto/16 :goto_4
.line 1088
:cond_1b <---qui hai il richiamo al cond_1b
const-string v2, "contextualpage_settings"
invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_20
.line 1089
check-cast p2, Ljava/lang/Boolean;
come vedi sopra ci sono 2 cond nominati cond_1b che ti riportano alla linea .line1088 , non è detto che ciò sia sbagliato ma in questo caso si, in questo caso il primo :cond_1b deve essere richiamato dove manca, il secondo :cond_1b deve essere rinominato e richiamato dopo la linea .line 1088
Prova a fare questa modifica e fammi sapere
-
Quote:
Originariamente inviato da
nicola78
Ho ridato uno sguardo al tuo DisplaySettings, e ho notato qualcosa nel .method public onPreferenceChange(Landroid/preference/Preference;Ljava/lang/Object;)Z
codice:
move-result-object v2
const-string v3, "clock_color"
invoke-static {v2, v3, v1}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z
goto/16 :goto_4
:cond_1a
const-string v2, "quick_launch"
invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_1b <---primo cond_1b
.line 1069
check-cast p2, Ljava/lang/String;
invoke-static {p2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
.line 1071
:try_start_3
invoke-virtual {p0}, Lcom/android/settings/DisplaySettings;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "quick_launch_app"
invoke-static {v1, v2, v0}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z
.line 1073
new-instance v0, Landroid/content/Intent;
const-string v1, "android.settings.QUICKLAUNCH_CHANGED"
invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
.line 1074
invoke-virtual {p0}, Lcom/android/settings/DisplaySettings;->getActivity()Landroid/app/Activity;
move-result-object v1
invoke-virtual {v1, v0}, Landroid/app/Activity;->sendBroadcast(Landroid/content/Intent;)V
.line 1075
const-string v0, "DisplaySettings"
const-string v1, "android.settings.QUICKLAUNCH_CHANGED is broadcasted"
invoke-static {v0, v1}, Landroid/util/Log;->secD(Ljava/lang/String;Ljava/lang/String;)I
:try_end_3
.catch Ljava/lang/NumberFormatException; {:try_start_3 .. :try_end_3} :catch_3
goto/16 :goto_4
.line 1077
:catch_3
move-exception v0
.line 1078
const-string v1, "DisplaySettings"
const-string v2, "could not persist quick launch setting"
invoke-static {v1, v2, v0}, Landroid/util/Log;->secE(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto/16 :goto_4
qui manca un richiamo :cond_
const-string v2, "key_backlight"
invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_1b <---secondo cond_1b
.line 1081
check-cast p2, Ljava/lang/String;
invoke-static {p2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
.line 1083
:try_start_4
invoke-virtual {p0}, Lcom/android/settings/DisplaySettings;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "key_backlight_timeout"
invoke-static {v1, v2, v0}, Landroid/provider/Settings$System;->putInt(Landroid/content/ContentResolver;Ljava/lang/String;I)Z
:try_end_4
.catch Ljava/lang/NumberFormatException; {:try_start_4 .. :try_end_4} :catch_4
goto/16 :goto_4
.line 1085
:catch_4
move-exception v0
.line 1086
const-string v1, "DisplaySettings"
const-string v2, "could not persist key backlight setting"
invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto/16 :goto_4
.line 1088
:cond_1b <---qui hai il richiamo al cond_1b
const-string v2, "contextualpage_settings"
invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_20
.line 1089
check-cast p2, Ljava/lang/Boolean;
come vedi sopra ci sono 2 cond nominati cond_1b che ti riportano alla linea .line1088 , non è detto che ciò sia sbagliato ma in questo caso si, in questo caso il primo :cond_1b deve essere richiamato dove manca, il secondo :cond_1b deve essere rinominato e richiamato dopo la linea .line 1088
Prova a fare questa modifica e fammi sapere
Caspita!! Mi sa che hai ragione...non lo avrei notato. Thanks!!
Comunque non è cambiato nulla a livello di icone wifi e rete!:'
-
Quote:
Originariamente inviato da
rattlehead
Caspita!! Mi sa che hai ragione...non lo avrei notato. Thanks!!
Comunque non è cambiato nulla a livello di icone wifi e rete!:'
E con l'icona della connessione dati hai provato ?
-
Quote:
Originariamente inviato da
nicola78
E con l'icona della connessione dati hai provato ?
No. Di solito non la uso .
Edit nulla