Search code examples
titaniumappcelerator

How to avoid reverse engineering of an apk build with Appcelerator?


I am developing a schedule app using Appcelerator, and I want to prevent a hacker from accessing any resources, assets or source code from the APK file.

If someone changes the .apk extension to .zip then they can unzip it and easily access all the app's resources and assets, and using dex2jar and a Java decompiler, they can also access the source code. It's very easy to reverse engineer an Android APK file.

Is there any functionality available in titanium SDK that prevent reverse engineering? I am using Titanium SDK Version 3.4.1.GA I tried following code but nothing works

<property name="ti.deploytype">distribution</property>
<property name="ti.android.compilejs" type="bool">true</property>

Solution

  • You'll drive yourself crazy trying to protect your code from someone determined to get into it. Generally, Appcelerator is getting you the ability to convert your code from JavaScript into something that resembles a mix of native with JavaScript controlling logic. If the Android platform doesn't accomplish what you want, I don't believe Appcelerator is attempting to do it either. I believe the JavaScript that doesn't get turned into native code is being obfuscated. I'm pretty sure that the Appcelerator project gets turned into an Android project. Perhaps you'll want to look for protections at that level and compile your app with the Android SDK tools.