2013-01-02 16 views
10

Ich möchte meine App-Größe zu minimieren sowie die App von Reverse-Engineering zu vermeiden. Kann jemand mit einfacher Antwort helfen?Wie verschleiern mein Android-Projekt in Eclipse-IDE?

+1

Sie möchten Proguard verwenden. Du hast es bereits als Tag hinzugefügt. Lesen Sie diese [Einführung] (http://developer.android.com/tools/help/proguard.html). Wenn Sie eine bestimmte Frage haben, kommen Sie zurück zu StackOverflow und fragen Sie sie. – Codo

+0

Sie möchten die App-Größe minimieren. Du willst nicht verschleiern. – dcow

Antwort

20

Proguard ist Teil des Androiden Eclipse-Plugins, so dass Sie es nicht manuell aufrufen müssen. Sie müssen es nur auf Ihrem Build aktivieren.

Um ProGuard so zu aktivieren, dass es als Teil eines Ant- oder Eclipse-Builds ausgeführt wird, legen Sie die proguard.config-Eigenschaft in der Datei <project_root>/project.properties fest. Der Pfad kann ein absoluter Pfad oder ein Pfad relativ zum Stamm des Projekts sein.

In einigen Situationen reichen die Standardkonfigurationen in der Datei proguard.cfg aus. Viele Situationen sind jedoch für ProGuard schwierig zu analysieren und entfernen möglicherweise Code, von dem er glaubt, dass er nicht verwendet wird, aber Ihre Anwendung tatsächlich benötigt. Einige Beispiele hierfür sind:

  • eine Klasse, die nur in der AndroidManifest.xml verwiesen wird
  • eine Methode aus JNI Datei namens
  • dynamisch referenzierten Felder und Methoden

Der Standard proguard.cfg Datei versucht, allgemeine Fälle zu behandeln, aber Sie können Ausnahmen wie ClassNotFoundException auftreten, die passiert, wenn ProGuard eine ganze Klasse entfernt, die Ihre Anwendung aufruft.

Sie können Fehler beheben, wenn ProGuard Ihren Code entfernt, indem Sie in der Datei proguard.cfg eine Zeile -keep hinzufügen.

+0

Wo finde ich proguard.cfg? innerhalb der Sonnenfinsternis gibt es keine solche Datei – Erum

0

Ja ist es möglich, App für das Reverse Engineering zu beschränken Verwendung ermöglicht proguard in Ihrem Projekt Sie dieses Tutorial für sie Proguard for Android app

und minimieren app Größe lesen sollten Sie .9patch Bilder verklagen sollen, und Selektor ..

9

1) neueste proguard Herunterladen von "http://sourceforge.net/projects/proguard/files/". Die aktuellste Version ist proguard4.7

2) Ersetzen Sie "bin" und "lib" Ordner von "Pfad Ihres SDK \ tools \ proguard" mit den zuletzt heruntergeladenen Progard-Ordnern.

3) Überprüfen Sie den SDK-Speicherort in Eclipse auf Leerzeichen und wechseln Sie zu Fenster> Einstellungen> Android. Wenn es Leerzeichen ist dann ersetzen Sie es mit:

Pathe von Android SDK

4) Überprüfen Sie, ob proguard.cfg Datei in Ihrem Projekt Stammordner und fügen Sie „proguard.config = proguard.cfg“ in Projekt. Eigenschaftendatei von Android-Projekt.

5) Exportieren Sie jetzt Ihr Projekt, um obfusicated apk zu bekommen.

+0

das funktioniert für mich. Einfache Schritte zum Verschleiern Ihrer .apk-Datei :) – Sujay

+0

** Fehler: Unbekannte Option '0409' in Argument Nummer 1 ** –

0

Sie können Dexguard https://www.guardsquare.com/dexguard versuchen, weitere Ebenen der Verschleierung hinzufügen, String-Verschlüsselung, Klassenverschlüsselung und Reflexion anwenden. Es ist nicht kostenlos, aber es geht über Proguard hinaus.

PD) Es ist kein Spam, ich habe keine Beziehung zu diesem Produkt, nur Informationen.