CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: 4eyes81 con ben 3 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: elmegio con ben 7 Thanks ricevuti negli ultimi sette giorni
Utente del mese: bluemask con ben 43 Thanks ricevuti nell'ultimo mese

Pagina 1 di 4 123 ... ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 1 a 10 su 31
Discussione:

Problema nella modifica di Settings.apk

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Androidiano


    Registrato dal
    Jul 2014
    Messaggi
    276

    Ringraziamenti
    43
    Ringraziato 17 volte in 17 Posts
    Predefinito

    Problema nella modifica di Settings.apk

    Salve.
    Da poco mi sono lanciato nella programmazione di Android (oddio, programmazione è una parola grossa).
    Comunque, ho provato a partire dalle basi, e dopo aver provato e fallito, alla fine sono riuscito a decompilare il file Settings.apk ed a modificare una scritta nel file Strings dentro la cartella values-it (al posto di Profili audio ho messo ciao, così, tanto per fare una prova).
    Dopo tanti altri tentativi sono riuscito a ricompilarlo senza errori, quindi l'ho sostituito al file originale Settings.apk dentro system/app e gli ho dato i permessi rw-r-r.
    Tuttavia, così facendo quando apro le impostazioni mi va in crash il sistema con l'errore: "SystemUI si è arrestato in maniera anomala" e sono costretto al riavvio.
    Rimettendo l'originale torna a funzionare tutto, perciò non capisco dove abbia sbagliato.
    Potete aiutarmi? So che probabilmente il mio è un errore banale però francamente non so quale sia, e vedere che non riesco a fare neanche le cose più semplici mi ha un po scoraggiato.

  2.  
  3. #2
    Androidiani Power User L'avatar di Crotan


    Registrato dal
    Jul 2013
    Località
    Roma
    Messaggi
    1,265
    Smartphone
    Redmi Note 9 Pro

    Ringraziamenti
    401
    Ringraziato 1,445 volte in 626 Posts
    Predefinito

    Queste non sono cose semplici infatti. Finché si tratta di cambiare una stringa va anche bene ma quando si iniziano a fare sostanziose modifiche lavorare a ritroso partendo da un apk non è semplice e sarebbe il caso di lavorare sul sorgente direttamente. Ad ogni modo, per capire l'errore devi fare un logcat mentre crasha.

  4. #3
    Androidiano


    Registrato dal
    Jul 2014
    Messaggi
    276

    Ringraziamenti
    43
    Ringraziato 17 volte in 17 Posts
    Predefinito

    Grazie per la risposta.
    Comunque avevo già pensato al logcat, solo che, anche quando il telefono è senza la modifica al Settings.apk, nel momento in cui lo sblocco cominciano ad apparire centinaia di righe e non riesco più a seguirlo, perciò anche quando crasha non riesco a capirci niente.
    Scusate se ho non ho detto che sto lavorando su una rom modificata, quindi non saprei dove andare a prendere i sorgenti.

  5. #4
    Senior Droid L'avatar di Uzumaki99


    Registrato dal
    Feb 2013
    Messaggi
    863
    Smartphone
    Galaxy Nexus

    Ringraziamenti
    110
    Ringraziato 568 volte in 246 Posts
    Predefinito

    per il logcat scarica ed installa CatLog
    poi nelle impostazioni dell'app metti il filtro Error.
    Metti l'apk settings da te modificata.
    Apri CatLog pulisci lo schermo rimanendo nel filtro errore.
    apri l'app settings falla chrasare e apri tramite i recenti l'app CatLog e vedi che avrai gli errori dell'app settings, puoi anche salvare tutti gli error in un file tramite le impostazioni di CatLog.

    Poi prendi il logcat e postalo qui.

    Per i sorgenti dell'app, basta che ci dici il nome della rom.
    My G.Nexus

    Rom: Firework
    Kernel: Fireworks Kernel

  6. #5
    Androidiano


    Registrato dal
    Jul 2014
    Messaggi
    276

    Ringraziamenti
    43
    Ringraziato 17 volte in 17 Posts
    Predefinito

    Quote Originariamente inviato da Uzumaki99 Visualizza il messaggio
    per il logcat scarica ed installa CatLog
    poi nelle impostazioni dell'app metti il filtro Error.
    Metti l'apk settings da te modificata.
    Apri CatLog pulisci lo schermo rimanendo nel filtro errore.
    apri l'app settings falla chrasare e apri tramite i recenti l'app CatLog e vedi che avrai gli errori dell'app settings, puoi anche salvare tutti gli error in un file tramite le impostazioni di CatLog.

    Poi prendi il logcat e postalo qui.

    Per i sorgenti dell'app, basta che ci dici il nome della rom.
    Grazie.
    Ho provato con la procedura da te indicata , ma crashando il SystemUI crasha tutto il sistema, compresi i tasti touch che purtroppo sono a schermo, e quindi non posso accedere al tab recenti e salvare il log.
    Comunque, ho risolto tramite adb logcat mettendo il filtro per gli errori, ecco:
    codice:
    user@user:~$ adb logcat *:E
    --------- beginning of /dev/log/main
    --------- beginning of /dev/log/system
    E/AndroidRuntime(  308): FATAL EXCEPTION: main
    E/AndroidRuntime(  308): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.settings.SETTINGS flg=0x10000000 }
    E/AndroidRuntime(  308): 	at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1518)
    E/AndroidRuntime(  308): 	at android.app.Instrumentation.execStartActivity(Instrumentation.java:1390)
    E/AndroidRuntime(  308): 	at android.app.ContextImpl.startActivity(ContextImpl.java:876)
    E/AndroidRuntime(  308): 	at android.content.ContextWrapper.startActivity(ContextWrapper.java:276)
    E/AndroidRuntime(  308): 	at com.android.systemui.statusbar.phone.PhoneStatusBar$6.onClick(PhoneStatusBar.java:2356)
    E/AndroidRuntime(  308): 	at android.view.View.performClick(View.java:3517)
    E/AndroidRuntime(  308): 	at android.view.View$PerformClick.run(View.java:14155)
    E/AndroidRuntime(  308): 	at android.os.Handler.handleCallback(Handler.java:605)
    E/AndroidRuntime(  308): 	at android.os.Handler.dispatchMessage(Handler.java:92)
    E/AndroidRuntime(  308): 	at android.os.Looper.loop(Looper.java:137)
    E/AndroidRuntime(  308): 	at android.app.ActivityThread.main(ActivityThread.java:4503)
    E/AndroidRuntime(  308): 	at java.lang.reflect.Method.invokeNative(Native Method)
    E/AndroidRuntime(  308): 	at java.lang.reflect.Method.invoke(Method.java:511)
    E/AndroidRuntime(  308): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:809)
    E/AndroidRuntime(  308): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:576)
    E/AndroidRuntime(  308): 	at dalvik.system.NativeStart.main(Native Method)
    E/AEE/LIBAEE(  234): read_cmdline:com.android.systemui
    Ad essere sincero non ci ho capito nulla
    Per il discorso ROM, beh, il mio è un Acer E350 sul quale ho installato una ROM trovata su un forum francese.
    La ROM si chiama Xtreamer v10.1, ma è un porting da uno smartphone cinese, con numerose modifiche, dubito si trovino i sorgenti (secondo le mie conoscenze).
    Ultima modifica di Bygepp; 21-12-14 alle 19:17

  7. #6
    Senior Droid L'avatar di Uzumaki99


    Registrato dal
    Feb 2013
    Messaggi
    863
    Smartphone
    Galaxy Nexus

    Ringraziamenti
    110
    Ringraziato 568 volte in 246 Posts
    Predefinito

    Mmm non sono ancora molto bravo a capire i logcat, comunque come si chiama il file che hai modificato?
    Mi posti la stringa originale e quella modificata ?

    Inviato dal mio Galaxy Nexus usando Androidiani App
    My G.Nexus

    Rom: Firework
    Kernel: Fireworks Kernel

  8. #7
    Androidiano


    Registrato dal
    Jul 2014
    Messaggi
    276

    Ringraziamenti
    43
    Ringraziato 17 volte in 17 Posts
    Predefinito

    Quote Originariamente inviato da Uzumaki99 Visualizza il messaggio
    Mmm non sono ancora molto bravo a capire i logcat, comunque come si chiama il file che hai modificato?
    Mi posti la stringa originale e quella modificata ?

    Inviato dal mio Galaxy Nexus usando Androidiani App
    Dopo aver decompilato il Settings.apk mi sono apparse tante cartelle, ora, avevo visto una guida nella quale mi veniva indicato il percorso dove ci sono le scritte di solito nei file apk, perciò sono andato nella cartella res > values-it ed ho aperto il file Strings.xml, che contiene le scritte appunto delle impostazioni, e per fare una prova ho modificato la seguente stringa:
    codice:
    <string name="audio_profile_settings_title">Profili Audio</string>
    in:
    codice:
    <string name="audio_profile_settings_title">ciao</string>
    Infatti secondo la guida per tradurre una ROM (e quindi modificare le scritte) vanno modificate appunto quelle stringhe.
    Ora, io non capisco il mio errore, possibile che modificando la scritta non vada più il file Settings.apk mandandomi in crash il sistema?

  9. #8
    Senior Droid L'avatar di Uzumaki99


    Registrato dal
    Feb 2013
    Messaggi
    863
    Smartphone
    Galaxy Nexus

    Ringraziamenti
    110
    Ringraziato 568 volte in 246 Posts
    Predefinito

    Allora ok per il file, mi serve ora la stringa vera e propria originale e come l'hai modificata tu

    Inviato dal mio Galaxy Nexus usando Androidiani App
    My G.Nexus

    Rom: Firework
    Kernel: Fireworks Kernel

  10. #9
    Androidiano


    Registrato dal
    Jul 2014
    Messaggi
    276

    Ringraziamenti
    43
    Ringraziato 17 volte in 17 Posts
    Predefinito

    Quote Originariamente inviato da Uzumaki99 Visualizza il messaggio
    Allora ok per il file, mi serve ora la stringa vera e propria originale e come l'hai modificata tu

    Inviato dal mio Galaxy Nexus usando Androidiani App
    Forse non ho capito io, ma la stringa che ho modificato l'ho già messa sopra, nell'originale c'era scritto Profili audio, in quella modificata ho scritto ciao, l'ho scritta sopra tra i tag code.
    Ultima modifica di Bygepp; 21-12-14 alle 21:38

  11. #10
    Senior Droid L'avatar di Uzumaki99


    Registrato dal
    Feb 2013
    Messaggi
    863
    Smartphone
    Galaxy Nexus

    Ringraziamenti
    110
    Ringraziato 568 volte in 246 Posts
    Predefinito

    scusa colpa mia, da telefono non si vedeva xD

    mi devi fare un favore, prova a modificare un altra stringa lasciando profili audio intatta e vedi se da problemi.
    poi un'altra prova: decompila l'app settings, ricompilala senza modificarla e vedi se lo stesso da problemi

    come ti ho detto non sono bravissimo con i logcat, per un aiuto maggiore dovremmo aspettare @Crotan
    Ultima modifica di Uzumaki99; 21-12-14 alle 21:44
    My G.Nexus

    Rom: Firework
    Kernel: Fireworks Kernel

Pagina 1 di 4 123 ... ultimoultimo
Ultima pagina

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy