I am performing reverse engineering on android apk using apktool.

  1. Is there any way I can view the code in SDK/NDK files ?
  2. if i make any change in the .smali files is it necessary to run the modified apk on rooted device and what will happen if i run the modified apk on non-rooted device ?
  • @1 - You can view it here github.com/AndroidSDKSources @2 - If you make some changes in the .smali files it is not necessary to run the apk file on rooted devices. You need to recompile the apk file, sign it with proper certificate (developer cert is ok), it can be done manually or with github.com/appium/sign. – TheKalin Jun 27 '18 at 7:26
  • @TheKalin, My friend has encrypted the db and stored the encryption password in NDK (.c files), I want to find the password via reverse engineering. – Rick Jun 27 '18 at 11:32

You can view the SDK by downloading it yourself.

Changing the dex file (which smali assembles to), or any other contents of an apk will invalidate the signature of the app, which will cause it to fail to install/update.

However, you can always just resign the app yourself and it will run fine, assuming the app itself isn't doing any integrity checks, or is using any signature based custom permissions, etc. Note that if you already have the app installed, you will need to uninstall it, because otherwise the signatures won't match and the app will fail to update.

| improve this answer | |
  • There are some changes made in SDK/NDK and then apk is build, So i wanted to view it by reverse engineering. – Rick Jun 20 '18 at 7:02

1) The Code written in NDK files is visible in .so files.

2) It is not mandatory to run the modified apk on rooted devices,but its a better option to run on rooted devices.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.