How to obfuscate my android project in eclipse IDE?

I want minimize my app size as well as avoid the app from reverse-engineering. Can anybody help with simple answer?

  • Protecting in-app purchases from Freedom Hack
  • Listitem click doesn't work with checkboxes Android
  • getActionBar() returns Null (AppCompat-v7 21)
  • Android drawCircle with different colour border
  • Some questions about OAuth and Android
  • How can I get the results from an AlertDialog?
  • Android BLE Beacon scanning
  • Intel X86 emulator accelerator (HAXM installer) VT/NX not enabled
  • Disconnect a bluetooth socket in Android
  • Programmatically add event in iPhone/Android Calendar with PhoneGap/jQuery Mobile?
  • get contact info from android contact picker
  • Android Studio - Importing external Library/Jar
  • 5 Solutions collect form web for “How to obfuscate my android project in eclipse IDE?”

    Proguard is part of the android eclipse plugin, so you do not have to invoke it manually.
    You just need to activate it on your build.

    To enable ProGuard so that it runs as part of an Ant or Eclipse build, set the proguard.config property in the <project_root>/project.properties file. The path can be an absolute path or a path relative to the project’s root.

    For some situations, the default configurations in the proguard.cfg file will suffice. However, many situations are hard for ProGuard to analyze correctly and it might remove code that it thinks is not used, but your application actually needs. Some examples include:

    • a class that is referenced only in the AndroidManifest.xml file
    • a method called from JNI
    • dynamically referenced fields and methods

    The default proguard.cfg file tries to cover general cases, but you might encounter exceptions such as ClassNotFoundException, which happens when ProGuard strips away an entire class that your application calls.

    You can fix errors when ProGuard strips away your code by adding a -keep line in the proguard.cfg file.

    1) Download latest proguard from “http://sourceforge.net/projects/proguard/files/”. Current latest version is proguard4.7

    2) Replace “bin” and “lib” folder of “path of your SDK\tools\proguard” with latest downloaded proguard folders.

    3) Check SDK location in eclipse for blank spaces in it and for that go to window > Preferences > Android. If there is blank space then replace it with:

    Pathe of Android SDK

    4) Check that proguard.cfg file is in your project’s root folder and add “proguard.config=proguard.cfg” in project.properties file of android project.

    5) Now export your project to get obfusticated apk.

    Yes it is possible to restrict app for reverse engineering using enabling proguard in your project Your should read this tutorial for it
    Proguard for Android app

    and for minimize app size you should sue .9patch images, and selector..

    You can use proguard for this. It is a tool provided by Google for the same purpose. See the official guide here:

    http://developer.android.com/tools/help/proguard.html

    You can give a try to Dexguard https://www.guardsquare.com/dexguard, can add more layers of obfuscation, applying string encryption, class encryption, and reflection. It’s not free, but it goes beyond than proguard.

    PD) It’s not spam, I don’t have any relation with this product, just information.

    Android Babe is a Google Android Fan, All about Android Phones, Android Wear, Android Dev and Android Games Apps and so on.