Autostart / Berechtigungen einer App entfernen (apktool)

J

JanF

Stammgast
82
Hier eine kurze Anleitung, wie man mit dem apktool Apps ein wenig verändern kann, z.B. um sich unerwünschter Autostarts zu entledigen.

Was wird benötigt?
- apktool (android-apktool - A tool for reengineering Android apk files - Google Project Hosting)
- texteditor (ich benutze in Linux vim, ich glaube in Windows tuts das Notepad)
- keystore mit gültigem Zertifikat (erstellbar mit keytool)
- jarsigner


Die Schritte:

0. Lizenz prüfen
Sollte eigentlich selbstverständlich sein, dass ihr bevor Ihr Änderungen an einer App vornehmt prüft, ob es die Lizenzbedingungen der App auch hergeben, an ihr Änderungen vor zu nehmen.

1. Enpacken des .apk files

Zuerst ist es nötig, das .apk file zu entpacken, damit man es editieren kann. Hierzu dient das apktool:
Code:
apktool d [apk-Filename]
2. Editieren der AndroidManifest.xml

Im entpackten Verzeichnis liegt nun die AndroidManifest Datei, die regelt, wie eine App ins System eingebunden ist. Diese kann man nun mit einem Texteditor - der keine Steuerzeichen für die Schriftgröße oder ähnliches setzt - editieren.

Interessant ist es <receiver> Elemente zu editieren. Aus ihnen kann man <intent-filter> -child nodes entfernen. Dabei ist zu beachten, dass man sie vom öffnen bis einschließlich dem Schließen (mit </intent-filter>) des Elements alles löscht. Eigentlich interessieren nur "broadcasts" also quasi Ergnisse, die vom System gesendet werden (wo der Name der Action des Intentfilters mit com.android beginnt). Denkbar wäre noch, dass eine App von einer anderen laufenden gestartet wird, dann muss man genauer kucken. Löscht man zu viel kann man zerstören, dass die App eigene Ereignisse korrekt verarbeitet.

Manche mögen sich auch für die Berechtigungen Interessieren. Diese kann man dadurch entziehen, dass man die <uses-permissions> Elemente entfernt.
Achtung, wenn eine App im Code eine Berechtigung benutzt, die sie nicht (mehr) hat, fliegt ein Fehler. Wird dieser nicht von der App behandelt stürtzt sie unvermittelt ab. Aber auch wenn die App nicht abstürzt kann sie evtl. gewünschte oder essentielle Funktionen nicht durchführen oder läuft Fehlerhaft.


Nachdem das Manifest geändert wurde (Achtung, muss immernoch valide sein, also sorgfältig arbeiten) kann man sich jetzt wieder ein neues .apk file basteln:

3. Erstellen eines neuen .apk files
Mit dem apktool kann sich nun folgendermaßen ein neues .apk bauen:

Code:
apktool b [verzeichnisname des entpackten .apk files] [neuerName.apk]
Eine solches apk kann man in Android nicht installieren. Android läßt nur signierte files zur Installation zu. Daher muss man noch schnell signieren:

4. Signieren der App
Mit
Code:
jarsigner -keystore [keystoreName] [neuerName.apk] [SignaturinhaberName im Keystore]
Dieses File kann man nun installieren, wenn die App nicht bereits mit anderem Zertifikat installiert ist (wenn sie installiert war also erst deinstallieren) oder wenn sie einen User-namen hat, mit dem ein anderes Zertifikat verbunden ist (dann entsprechende Apps deinstallieren).

5. App Installieren
Einfach das neue .apk file aufs Telefon kopieren und mit einem Dateibrowser ausführen.

Viel Spaß beim Ausprobieren.
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: andrand, Eneco, Spider1996 und eine weitere Person
JanF schrieb:
0. Lizenz prüfen
Sollte eigentlich selbstverständlich sein, dass ihr bevor Ihr Änderungen an einer App vornehmt prüft, ob es die Lizenzbedingungen der App auch hergeben, an ihr Änderungen vor zu nehmen.

ach komm
 
Wenn ich mich nicht irre kann man doch mit der ROM Toolbox Autostart von Apps aktivieren / deaktivieren? :huh:
 
Hallo zusammen,

ich besitze ein gerootetes S3 und nutze SRT:AppGuard, Autorun Manager Pro, Avast! Mobile & DroidWall.

Nun habe ich folgede Fragen:

1. Autorun:
- ich möchte gerne so wenig wie irgendmöglich Programme (auch Systemprogramme!!) geöffnet haben. Ich nutze weder Sozial networks, noch googleMail, GoogleMaps, Playbook, S Voice oder sonstige Samsung oder google Apps. Das Handy wird weder zum Spielen, noch für Ortungsgeschichten oder sonst was benutzt.

Was kann ich denn alles guten Gewissens im Autorun abstellen, ohne die Telefoneigenschaften zu beeinträchtigen??



2. Avast! Mobil:
- irgendwie habe ich nicht das Gefühl, das dieses Programm irgendwas einschränkt. Bei meiner Windows-Firewall ist das irgendwie nachvollziehbarer.
Was kann ich denn hier noch alles blockieren um mehr Sicherheit zu erhalten?

Denn leider kann man die System-Apps nicht mit SRT:AppGuard verändern. Und ich will einfach nicht, dass Google so viel "nach hause telefoniert".


3. was kann ich denn generell noch an meinem System ändern, um die Sicherheit und vor allem den DATENSCHUTZ zu erhöhen??

Ich freue mich über zahlreiche Anworten!! :)

Merci vielmals

Beste Grüße vom Bodensee
 
selfmade12 schrieb:
Was kann ich denn alles guten Gewissens im Autorun abstellen, ohne die Telefoneigenschaften zu beeinträchtigen??

Versteh mich nicht falsch, ich meine das keinesfalls böse oder provozierend, aber bist Du sicher, dass Du Dir das richtige Telefon gekauft hast?
 
sagen wir mal so, es ist der erste Ausflug in das Droiden-Land.

Wobei es einfach zu wenige Alternativen gibt. Das iPhone ist viel zu eingeschränkt & die Windows-Phones noch zu unausgereift und Leistungsschwach.
Und Symbian leider (!) nicht mehr up-to-date.
 
selfmade12 schrieb:
sagen wir mal so, es ist der erste Ausflug in das Droiden-Land.

Und gerade deshalb verstehe ich nicht, warum Du quasi auf alles, was man mit Android so machen kann, verzichten und Dir stattdessen ein Hosentaschen-Fort Knox, eine wandelnde Einbruchmeldeanlage einrichten möchtest - und das mit einem der technisch besten und schnellsten Telefone auf dem Markt.

Zunächst einmal ist es bei Android überhaupt kein Problem, Programme geöffnet zu haben. Es gibt also eigentlich keinen Grund, auf irgendwelchen Komfort zu verzichten, nur um so wenige Programme wie möglich geöffnet zu haben. Darum kümmert sich das Speichermanagement von Android.

Was die von Dir angesprochenen Programme angeht, weiß ich natürlich nicht, warum Du die nicht nutzen willst, aber mir scheint, dass Du ziemlich misstrauisch bist, oder? Und was genau verstehst Du unter "erhöhter Sicherheit und Datenschutz", wenn Du das Dingen doch sowieso nur zum Telefonieren benutzen willst?
 
selfmade12 schrieb:
...Und Symbian leider (!) nicht mehr up-to-date...
Ja, aber Hotz hat völlig Recht. Ein Smartphone macht doch erst richtig Sinn durch die ganzen Funktionen, die du nicht nutzen möchtest. Wenn du nur telefonieren möchtest, hab ich hier noch ein Siemens C25 liegen. Macht alles was du möchtest, gibt keine Daten preis und - das Beste - der Akku hält 'ne ganze Woche ohne aufladen (das war noch schön:rolleyes2:).
Aber jetzt im Ernst: Ich denke nicht, dass du noch viel mehr machen kannst, um dein Handy 'sicherer' zu machen.
Zum Thema Autostart gibt's hier im Forum oder auch anderswo viel zu lesen. Die meisten Apps, die beim Start geladen werden, beenden sich auch kurz darauf wieder. Wenn dich irgendeine wirklich stört, finde heraus, wozu sie nötig ist und wenn du diese Funktion entbehren kannst, dann verhindere den Start oder deinstalliere sie komplett.
 
@ Hotz: ... auch bei Windows ist es kein Problem duzende Programme im Hintergrund laufen zu lassen. Jedoch kostet jede geöffnete Anwendung Rechenleistung und somit bei einem mobilen Gerät auch Akkuleistung.
Und wenn ich die geöffneten Anwendungen weder benötige noch nutzen möchte, müssen diese ja de facto auch nicht im Hintergrund aktiv sein, oder?

Mir geht es einfach darum, dass ich gerne die Kontrolle über ein System besitze, ähnlich wie bei einem normalen Computer.

Zudem halte ich das Thema "Datenschutz" für völlig vernachlässigt. Nicht umsonst klagen Datenschützer haufenweise über unzählige Applikationen genauso wie über Sozial Networking und die Fahrlässigkeit der meisten Nutzer von Smartphones.

Und da man eben unter Windows mit etwas Wissen vieles Kontrollieren kann, würde ich dies gern auch auf meinem Android-System umsetzen.

Und was spricht denn gegen eine höhere Sicherheit??
 
selfmade12 schrieb:
@ Hotz: ... auch bei Windows ist es kein Problem duzende Programme im Hintergrund laufen zu lassen. Jedoch kostet jede geöffnete Anwendung Rechenleistung und somit bei einem mobilen Gerät auch Akkuleistung.

Das ist unter Android anders. Lies mal
https://www.android-hilfe.de/forum/tools.441/interessanter-artikel-zum-thema-taskkiller.52786.html

Und dass Du das System kontrollieren willst, ist ja völlig okay. Warum Du Deinen Ferrari aber nur zum Brötchen holen benutzen willst, verstehe ich trotzdem nicht. Das eine schließt das andere ja nicht aus.

Was den Datenschutz angeht, gebe ich Dir völlig recht, natürlich wird der heutzutage völlig vernachlässigt. Nur kann man da ja beim Handy durchaus einen akzeptablen Kompromiss eingehen, indem man beispielsweise das unsägliche Facebook meidet, einfach nicht jede App installiert und immer mal ein Auge darauf hat, wer denn jetzt alles "nach Hause telefonieren" möchte - und wie groß das Schädlichkeitspotential jeweils ist. Statt Whatsapp z.B. gar nicht erst zu benutzen, weil es ja potentiell schädlich sein könnte, nutze ich es doch lieber, aber eben im "Postkartenmodus". Sollte jemand da tatsächlich was ausspähen, dürfte er es wohl eher nicht besonders interessant finden.

Was die höhere Sicherheit angeht, klar, da spricht nichts dagegen, im Gegenteil. Nur ganz ohne Risiko geht es eben nicht, wenn man nicht komplett auf allen Komfort, den die Technik nun mal mit sich bringt, verzichten will. Trotzdem halte ich dieses Risiko schon für ziemlich überschaubar. Daher aber auch meine Frage ganz zu Beginn - wenn Du wirklich jedes Risiko ausschließen willst, wäre es eben sicher einfacher, ein Telefon zu benutzen, mit dem Du diese Risiken erst gar nicht eingehst, statt ein mit allen derzeit möglichen Techniken ausgestattetes Smartphone erst mühsam auf ein "Nur-noch-Telefon" herunterzukastrieren.
 
Zuletzt bearbeitet:
@02.02.2012, 12:32 JanF

Android Experte
Autostart / Berechtigungen einer App entfernen (apktool)
Würde sehr gerne OHNE zu rooten viele Autostarts DEAKTIVIEREN bei meinem Samsung Galaxy SII und das Samsung Galaxy Tab 2

Kann zwar diese Datei: android-apktool - A tool for reverse engineering Android apk files - Google Project Hosting ---> 2013.02.02 apktool v1.5.2 Changes Downloaddownloaden, komme aber nicht zu der APK-Datei!

Kenn mich überhaupt nicht aus mit dieser Anleitung: https://www.android-hilfe.de/forum/...ungen-einer-app-entfernen-apktool.199155.html
 

Ähnliche Themen

Yusublue
Antworten
3
Aufrufe
9.735
TheDoctorMoDz
T
S
Antworten
1
Aufrufe
1.177
rudolf
R
S
Antworten
9
Aufrufe
3.851
Springteufel
S
Zurück
Oben Unten