Zurück   Android-Hilfe.de > Google Android OS > Android Apps > Tools


Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!

HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Das Thema "HOWTO Einzelne Anwendungen verschieben (root erforderlich)" befindet sich unter Tools auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 07.03.2009, 19:36   #1 (permalink)
Ehren-Mitglied
 
Benutzerbild von Autarkis

Modell: HTC G1 & Motorola Milestone 2

Registriert seit: 28.02.2009
Beiträge: 1.033
Abgegebene Danke: 29
Erhielt 43 Danke für 29 Beiträge
Autarkis eine Nachricht über ICQ schicken Autarkis eine Nachricht über MSN schicken Autarkis eine Nachricht über Yahoo! schicken Autarkis eine Nachricht über Skype™ schicken
Ausrufezeichen [Biete] HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Hey Leute,

Ich habe ein Skript erstellt, mit welchem man einzelne Anwendungen auf die SD-Karte auslagern kann, da beim Auslagern aller Apps manchmal Probleme auftreten. So kann man für sich selber ausprobieren, bei welcher App diese Probleme entstehen.

Vorbereitungen:

* root
* ext2-Partition auf SD-Karte
* modifizierte init.rc und mountd.conf einspielen (Anhang), vorher sichern, gemäss "Apps on SD card"
* Telefon rebooten
* Verzeichnis /system/sd/app erstellen:
Code:
adb remount 
adb shell mkdir /system/sd/app
* zu verschiebende app ausfindig machen; ich hab für mich mit den umfangreichsten angefagen die nicht im Hintergrund laufen müssen. Ich habe den Verdacht, dass da die Probleme anfagen! Mit

Code:
adb shell ls -laS /data/app/
bekommt man eine nach Dateigrösse sortierte Liste der installierten Apps.

* nun kann man die ausgewählten Sünder (z.B das neue com.slovoed.vox.spanish_spanish.apk, das man wohl selten benötigen wird, aber mit 7.1MB zu Buche schlägt) mit Hilfe des Skripts verschieben:

Code:
mvapp.sh com.slovoed.vox.spanish_spanish.apk
Damit das funktioniert muss adb root-fähig sein, das war bei älteren JF-root-Flashes meines Wissens nicht immer der Fall.


Noch Fragen?


----

mvapp.sh
Code:
#!/bin/bash
adb remount
adb shell cp /data/app/$1 /system/sd/app/$1
adb shell rm /data/app/$1
adb shell ln -s /system/sd/app/$1 /data/app/$1
adb shell chown 1000:1000 /data/app/$1
Angehängte Dateien
Dateityp: zip mvapp.zip (1,1 KB, 51x aufgerufen)
__________________
Twitter | deviantART | Last.FM Music
Motorola Milestone 2
Ich leiste keine Hilfestellung per PM. Dafür ist das Forum da.
Meine App New World of Dice: im Market
Disclaimer: Ich helfe zwar wo ich kann, kann aber nur vom HTC G1 und vom Motorola Milestone 2 aus eigener Erfahrung berichten!

Geändert von zx128 (21.03.2009 um 23:38 Uhr) Grund: Titel den Moderationsrichtlinien angepasst
Autarkis ist offline   Mit Zitat antworten
Alt 07.03.2009, 19:59   #2 (permalink)
Ehrenmitglied
 
Benutzerbild von zx128

Registriert seit: 23.01.2009
Beiträge: 1.146
Abgegebene Danke: 1
Erhielt 67 Danke für 18 Beiträge
Standard AW: HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Danke für die Anleitung!

Hätte ich root - würde ich es sofort ausprobieren. Bei dem Script habe ich aber keine Zweifel

Kleine Frage:

heißt bei JF-Builds der Ordner für SD-Mount sd? Oder ist es bei allen US-G1 so?
Fiel mir halt auf, weil es bei mit sdcard heißt
zx128 ist offline   Mit Zitat antworten
Alt 07.03.2009, 20:07   #3 (permalink)
Ehren-Mitglied
 
Benutzerbild von Autarkis

Modell: HTC G1 & Motorola Milestone 2

Registriert seit: 28.02.2009
Beiträge: 1.033
Abgegebene Danke: 29
Erhielt 43 Danke für 29 Beiträge
Autarkis eine Nachricht über ICQ schicken Autarkis eine Nachricht über MSN schicken Autarkis eine Nachricht über Yahoo! schicken Autarkis eine Nachricht über Skype™ schicken
Standard AW: HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Zitat:
Zitat von zx128 Beitrag anzeigen
Danke für die Anleitung!

Hätte ich root - würde ich es sofort ausprobieren. Bei dem Script habe ich aber keine Zweifel

Kleine Frage:

heißt bei JF-Builds der Ordner für SD-Mount sd? Oder ist es bei allen US-G1 so?
Fiel mir halt auf, weil es bei mit sdcard heißt
Es sind zwei mountd.conf / init.rc - Kombinationen im Umlauf ( aus diesem oder jenem Thread). Je nachdem welche du verwendest, hast du den Mountpoint entweder auf /system/sd oder auf /sd . /sdcard hingegen ist der normale Mountpoint für die FAT32-Partition. Die ext2-Partition hat dort nichts zu suchen.

Ich bin der Meinung, /system/sd ist sowohl der neuere als auch der elegantere Mountpoint.
__________________
Twitter | deviantART | Last.FM Music
Motorola Milestone 2
Ich leiste keine Hilfestellung per PM. Dafür ist das Forum da.
Meine App New World of Dice: im Market
Disclaimer: Ich helfe zwar wo ich kann, kann aber nur vom HTC G1 und vom Motorola Milestone 2 aus eigener Erfahrung berichten!

Geändert von Autarkis (07.03.2009 um 20:09 Uhr) Grund: Klammer zu!
Autarkis ist offline   Mit Zitat antworten
Alt 08.03.2009, 00:39   #4 (permalink)
Ehren-Mitglied
 
Benutzerbild von Autarkis

Modell: HTC G1 & Motorola Milestone 2

Registriert seit: 28.02.2009
Beiträge: 1.033
Abgegebene Danke: 29
Erhielt 43 Danke für 29 Beiträge
Autarkis eine Nachricht über ICQ schicken Autarkis eine Nachricht über MSN schicken Autarkis eine Nachricht über Yahoo! schicken Autarkis eine Nachricht über Skype™ schicken
Standard AW: HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Okay, ich hab inzwischen weiter getüftelt. Das Skript oben funtkioniert. Ich habe jetzt ein besseres angefertigt, wobei auch direkt die Daten einer Anwendung auf die SD-Karte verschoben werden. Dabei arbeite ich mit cp -p, was die Rechte intakt lässt. Hätte ich schon von Anfang an tun sollen.

Das neue Skript nimmt als Parameter den Namen der Anwendung und nicht den Namen des Pakets. Das heisst, man ruft es mit

Code:
mvappndata.sh com.mobisystems.msdict.embedded.wireless.pons.ssd
auf. Das ".apk" am Schluss weglassen, das neue Skript fügt das selber hinzu wo nötig.

Getestet und funktioniert, zur Vorbereitung muss ein Verzeichniss /system/sd/data/ erstellt werden.

---

Code:
#!/bin/bash
# mvappndata.sh 1.1 by autarkis@gmx.net 
# GPL OpenSource
adb remount
adb shell cp -rp /data/app/$1.apk /system/sd/app/$1.apk
adb shell rm /data/app/$1.apk
adb shell ln -s /system/sd/app/$1.apk /data/app/$1.apk
adb shell cp -rp /data/data/$1 /system/sd/data/$1
adb shell rm -r /data/data/$1 
adb shell ln -s /system/sd/data/$1 /data/data/$1
__________________
Twitter | deviantART | Last.FM Music
Motorola Milestone 2
Ich leiste keine Hilfestellung per PM. Dafür ist das Forum da.
Meine App New World of Dice: im Market
Disclaimer: Ich helfe zwar wo ich kann, kann aber nur vom HTC G1 und vom Motorola Milestone 2 aus eigener Erfahrung berichten!
Autarkis ist offline   Mit Zitat antworten
Alt 19.04.2009, 16:31   #5 (permalink)
Neuer Benutzer

Modell: Motorola Milestone

Registriert seit: 19.04.2009
Beiträge: 29
Abgegebene Danke: 0
Erhielt 4 Danke für 4 Beiträge
Standard AW: HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Hi,
danke für die Anleitung, grundsätzlich scheint es zu funktionieren.
Die APK Dateien und die Datenverzeichnisse tauchen nach dem Ausführen des Skripts in /system/sd/app und /system/sd/data auf.

Aber irgendeinen Fehler scheine ich gemacht zu haben.
Nach dem Kopieren einer Anwendung, muss ich diese zunächst neu installieren, ansonsten ist sie einfach verschwunden.
Ist das richtig so?
Und sobald ich die Anwendung neu installiert habe, ist der Telefonspeicher wieder genauso voll wie vorher und die Anwendung funktioniert auch ohne SD-Karte.
Die Anwendung wurde also scheinbar wieder in den Telefonspeicher installiert.

Ich muss dazu sagen, dass ich das ganze unter Windows probiert habe, d.h. die sh Datei in eine bat umgeschrieben:

mvappndata.bat
Code:
adb remount
adb shell cp -rp /data/app/%1.apk /system/sd/app/%1.apk
adb shell rm /data/app/%1.apk
adb shell ln -s /system/sd/app/%1.apk /data/app/%1.apk
adb shell cp -rp /data/data/%1 /system/sd/data/%1
adb shell rm -r /data/data/%1 
adb shell ln -s /system/sd/data/%1 /data/data/%1
Aufruf dann beispielsweise mit "mvappndata.bat mobi.bbase.discover"

Läuft ohne Fehlermeldung durch, vielleicht funktioniert irgendein Befehl trotzdem nicht?
Hendrik ist offline   Mit Zitat antworten
Alt 19.04.2009, 21:13   #6 (permalink)
Ehren-Mitglied
 
Benutzerbild von Autarkis

Modell: HTC G1 & Motorola Milestone 2

Registriert seit: 28.02.2009
Beiträge: 1.033
Abgegebene Danke: 29
Erhielt 43 Danke für 29 Beiträge
Autarkis eine Nachricht über ICQ schicken Autarkis eine Nachricht über MSN schicken Autarkis eine Nachricht über Yahoo! schicken Autarkis eine Nachricht über Skype™ schicken
Standard AW: HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Hey Hendrik,

Schaut gut aus. Es kann nur daran liegen, dass die SD-Karte nicht richtig verlinkt ist.

Zur Vorbereitung auf die Verwendung dieses Skripts muss man wie gesagt die Verzeichnisse /system/sd/app und /system/sd/data/ erstellen, mit

Code:
adb shell mkdir /system/sd/app
adb shell mkdir /system/sd/data
Natürlich sollte die ext2-Partition auf /system/sd/ gemountet sein, aber ich gehe mal davon aus.
__________________
Twitter | deviantART | Last.FM Music
Motorola Milestone 2
Ich leiste keine Hilfestellung per PM. Dafür ist das Forum da.
Meine App New World of Dice: im Market
Disclaimer: Ich helfe zwar wo ich kann, kann aber nur vom HTC G1 und vom Motorola Milestone 2 aus eigener Erfahrung berichten!
Autarkis ist offline   Mit Zitat antworten
Alt 20.04.2009, 21:41   #7 (permalink)
Neuer Benutzer

Modell: Motorola Milestone

Registriert seit: 19.04.2009
Beiträge: 29
Abgegebene Danke: 0
Erhielt 4 Danke für 4 Beiträge
Standard AW: HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Ja das scheint alles soweit zu stimmen.

Habe im Terminalemulator mit
su
busybox df -h
nachgeschaut ob die ext2 Partition richtig gemountet ist.

Die Verzeichnisse existieren auch.

Wenn ich dein Skript für eine Anwendung ausführe, landet die APK Datei in
/system/sd/app

Danach ist die Anwendung allerdings nicht mehr installiert.
Stimmt das so?
Hendrik ist offline   Mit Zitat antworten
Alt 20.04.2009, 21:53   #8 (permalink)
Ehren-Mitglied
 
Benutzerbild von Autarkis

Modell: HTC G1 & Motorola Milestone 2

Registriert seit: 28.02.2009
Beiträge: 1.033
Abgegebene Danke: 29
Erhielt 43 Danke für 29 Beiträge
Autarkis eine Nachricht über ICQ schicken Autarkis eine Nachricht über MSN schicken Autarkis eine Nachricht über Yahoo! schicken Autarkis eine Nachricht über Skype™ schicken
Standard AW: HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Zitat:
Zitat von Hendrik Beitrag anzeigen
Ja das scheint alles soweit zu stimmen.

Habe im Terminalemulator mit
su
busybox df -h
nachgeschaut ob die ext2 Partition richtig gemountet ist.

Die Verzeichnisse existieren auch.

Wenn ich dein Skript für eine Anwendung ausführe, landet die APK Datei in
/system/sd/app

Danach ist die Anwendung allerdings nicht mehr installiert.
Stimmt das so?
Nein, die Anwendung sollte installiert bleiben, da ein Symlink erstellt wird.

Irgendwas stimmt nicht, kann das per Ferngeistheilung nicht lösen... guck mal nach ob die Symlinks richtig erstellt werden.
__________________
Twitter | deviantART | Last.FM Music
Motorola Milestone 2
Ich leiste keine Hilfestellung per PM. Dafür ist das Forum da.
Meine App New World of Dice: im Market
Disclaimer: Ich helfe zwar wo ich kann, kann aber nur vom HTC G1 und vom Motorola Milestone 2 aus eigener Erfahrung berichten!
Autarkis ist offline   Mit Zitat antworten
Alt 20.04.2009, 21:58   #9 (permalink)
Neuer Benutzer

Modell: Motorola Milestone

Registriert seit: 19.04.2009
Beiträge: 29
Abgegebene Danke: 0
Erhielt 4 Danke für 4 Beiträge
Standard AW: HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Okay, kannst du mir sagen an welcher Stelle der Anleitung die Symlinks erstellt werden?
Bin nicht so Linux bewandert

Dann kann ich die betreffenden Stellen nochmal überprüfen.
Hendrik ist offline   Mit Zitat antworten
Alt 20.04.2009, 22:11   #10 (permalink)
Ehren-Mitglied
 
Benutzerbild von Autarkis

Modell: HTC G1 & Motorola Milestone 2

Registriert seit: 28.02.2009
Beiträge: 1.033
Abgegebene Danke: 29
Erhielt 43 Danke für 29 Beiträge
Autarkis eine Nachricht über ICQ schicken Autarkis eine Nachricht über MSN schicken Autarkis eine Nachricht über Yahoo! schicken Autarkis eine Nachricht über Skype™ schicken
Standard AW: HOWTO Einzelne Anwendungen verschieben (root erforderlich)

Die Symlinks müssten in /data/app/Anwendung.apk landen.

Dort sollten sie aber keinen Platz belegen, sondern auf /system/sd/app/Anwendung.apk verweisen.

Die Symlinks werden vom Skript erstellt.
__________________
Twitter | deviantART | Last.FM Music
Motorola Milestone 2
Ich leiste keine Hilfestellung per PM. Dafür ist das Forum da.
Meine App New World of Dice: im Market
Disclaimer: Ich helfe zwar wo ich kann, kann aber nur vom HTC G1 und vom Motorola Milestone 2 aus eigener Erfahrung berichten!
Autarkis ist offline   Mit Zitat antworten
Antwort

Stichworte
app, root, sdcard, shell, skript

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
[Howto] Root mit Goldcard Lösung McLin Root / Hacking / Modding für T-Mobile G1 608 08.03.2010 16:52
[HowTo] Von Root zum original ROM surah Root / Hacking / Modding für T-Mobile G1 70 23.01.2010 19:36
Buttons verschieben ? flobob T-Mobile G1 Forum 3 08.04.2009 11:22
Anwendungen auf die Speicherkarte setzen famakoeln Android Allgemein 4 24.02.2009 13:32




Du liest gerade: "HOWTO Einzelne Anwendungen verschieben (root erforderlich)" unter "Tools" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.