Ho creato uno script per montare partizioni e fare alcune cose nel mio sistema Android. Ho salvato lo script come install.sh nella cartella/bin di Android.Avvia uno script come root tramite ADB
Voglio chiamare lo script da ADB, che è esso stesso chiamato da un file batch su Windows, ma deve essere eseguito come root.
La prima soluzione che ho provato è stato quello di chiamare lo script utilizzando
adb shell "su -c sh /bin/script.sh"
ma non funziona come mi dà un accesso alla shell (con i permessi di root), ma nulla viene eseguito. Ho anche provato a chiamare
adb root "sh /bin/script.sh"
ma ho ottenuto il seguente errore
adbd cannot run as root in production builds
Allora ho provato a scrivere
su -c "command"
per tutti i comandi che hanno bisogno di un accesso di root nel mio script , ma ho lo stesso problema. Quando eseguo lo script, ottengo solo una shell di root e non viene eseguito nulla.
Se utilizzo la prima soluzione a mano (ad esempio chiamo adb shell su, quindi il mio script), funziona. Tuttavia l'intero punto è quello di automatizzare il processo, in modo che la shell adb possa essere chiamata da un altro script.
Avete qualche idea di come potrei ottenere questo?
Grazie!
Questo funziona incredibilmente sulla mia versione di Samsung Note 4 Exynos, versione di sistema Android 4.4. Ho cercato online soluzioni per l'intera giornata. Grazie a dio, ho finalmente letto questo post. Funziona. Il RootAdb funzionava con il tablet Galaxy Note 10.1, ma non funziona più con questo Note4. –
su Android 7.1.1 Ho scoperto che l'utilizzo delle virgolette singole all'interno delle virgolette doppie ha effettivamente compromesso l'esecuzione. Rimuovendoli sembrava che tutto funzionasse come previsto. – MikeSchem