[TOOL][APP][4.0+] Show Java - A Java Decompiler for Android - Get java source from ap

Search This thread

niranjan94

Senior Member
Jun 21, 2012
208
502
Coimbatore
www.github.com

Disclaimer

DO NOT USE THIS APPLICATION TO DO STUFF THAT YOU HAVE NO RIGHT TO DO.
THE DEVELOPER (Niranjan Rajendran) IS IN NO WAY RESPONSIBLE FOR ANY MISUSE OF THIS APPLICATION.



About

This is basically a Java Decompiler that to extract the .java source code from an APK( Android application) and jar files. There are many such decompilers that run on a PC. But, I didn't find one that runs properly on a android phone. So, i thought of making one, and , here it is :D

Features

  1. Runs directly on your android device
  2. Select jar/apk from sdcard (or) from a list of installed applications
  3. Easy to use
  4. Displays code in a clean-syntax-highlighted form
  5. Decompiles XML Files (layouts, Drawables, Menus, AndroidManifest)
  6. The decompiled source can easily be copied from the sdcard (source is stored in ShowJava folder in the sdcard)
  7. Simple source browser with a summary of all decompilation errors
  8. Each decompiled source file has commented references to classes that could not be decompiled
  9. Runs in the background

What's new in version 2.0.0 (Version Code: 20004)

The first major update after the app's initial release on January 7th 2014. The app's entire code has been re-written (from scratch in many places) to make sure the app performs well up to the user's expectations.

  1. Updated to Material Design
  2. Performance improvements
  3. Updated to CFR 0.102
  4. Will now decompile xml resources (including AndroidManifest.xml)
  5. Fixed all the crashes experienced by users of the previous version
  6. Cleaned up the source code. (As I said, I rewrote it :wink: )
  7. The project is now fully open-sourced :v:

Download (it's free)



Screenshots

Here you go ;-) .

Source Code

This will be an Open Sourced project. The source code is hosted at GitHub
https://www.github.com/niranjan94/show-java/.

Please read the License info before using any part of the code in any project.

Bugs

  1. Does not work with system applications in most of the phones (especially one's that are not de-odexed)
  2. Slow on phones with single core processors

Reporting a Bug

Always please attach a logcat while reporting major bugs. You can report bugs via GitHub Issues system

Reasons for Permissions

  1. Internet - Automated bug reporting
  2. External Storage - To store the decompiled source code and to have a working directory for the application

Changelog

Code:
Version 2.0.0 (Aug 22, 2015)
===========================
>> Updated to Material Design
>> Performance improvements
>> Updated to CFR 0.102
>> Will now decompile xml resources (including AndroidManifest.xml)
>> Fixed all the crashes experienced by users of the previous version
>> Cleaned up the source code. (As I said, I rewrote it)
>> The project is now fully open-sourced

Version 1.9.1 (Dec 21, 2014)
===========================
>> Crash Fix

Version 1.9 (Dec 20, 2014)
==========================
>> Improve topsort
>> Fix bad chained goto removal.
>> Remove references to labelled blocks if a labelled block break would end up in the same place as a natural scoped break.
>> Reduce goto chain condensing in the presence of break statements.
>> Handle duplicate field names

Version 1.7/1.8 (Nov 7, 2014)
=============================
>> Fixed crash on new installations
>> Fixed crash on devices running on Android Runtime (ART)

Version 1.6/1.5 (Nov 4, 2014)
=============================
>> Improvements to SSA analysis
>> Fix precedence issue on instanceof.
>> improvement to handling some obfuscated switches which caused failure
>> Minor Bug fixes

Version 1.4 (Sep 29, 2014)
==========================
>> Updated CFR to 0.87
>> Fix precedence issue on instanceof.
>> Rewrite variable definitions
>> Better guess for anonymous inner types.
>> Improvements to implicit cast checking.
>> Handle empty switches better
>> Fix bug which could cause some switch-on-enum statements not to be resugared.
>> And more decompiler improvements

Version Code: 3 ( 10-Feb-2014)
==============================
>> Urgent Bug Correction (Please Update !) with dex optimisation

Version Code: 2 ( 09-Feb-2014)
==============================
>> Corrected force closes on certain devices
>> Increased decompile speed by 3x times by skipping common libraries (like support library, actionbarsherlock etc)
>> Added Option to Pick an apk/jar from sdcard (also associated apk/jar with Show Java for ease-of-use)
>> Added history of decompiled applications
>> A New, Clean and Minimal Progress Indicator
>> UI Updated to a modern look

Version Code: 1 ( 07-Jan-2014)
==============================
>> Initial Release


Credits

  • A Big-Huge Thanks to Lee Benfield (lee@benf.org) for his awesome CFR - Class File Reader :D :D
  • Panxiaobo (pxb1988@gmail.com) for dex2jar :)
  • jesusfreke (jesusfreke@jesusfreke.com) and bgruv (bgruv@google.com) for smali/baksmali/dexlib2

XDA:DevDB Information
Show Java - A Java Decompiler for Android , App for all devices (see above for details)

Contributors
niranjan94
Source Code: https://github.com/niranjan94/show-java


Version Information
Status: Stable
Current Stable Version: 2.0.0
Stable Release Date: 2015-08-22

Created 2014-01-07
Last Updated 2015-08-22
 

Attachments

  • device-2015-08-22-203217.png
    device-2015-08-22-203217.png
    128.1 KB · Views: 859
  • device-2015-08-22-203248.png
    device-2015-08-22-203248.png
    166.6 KB · Views: 862
  • device-2015-08-22-203316.png
    device-2015-08-22-203316.png
    52.4 KB · Views: 856
  • device-2015-08-22-203439.png
    device-2015-08-22-203439.png
    59.5 KB · Views: 855
  • device-2015-08-22-203507.jpg
    device-2015-08-22-203507.jpg
    226.1 KB · Views: 841
  • device-2015-08-22-203556.jpg
    device-2015-08-22-203556.jpg
    217 KB · Views: 841
  • device-2015-08-22-203630.jpg
    device-2015-08-22-203630.jpg
    206.1 KB · Views: 838
  • device-2015-08-22-203158.jpg
    device-2015-08-22-203158.jpg
    75.4 KB · Views: 840
Last edited:

sourcex

Senior Member
Sep 27, 2012
97
9
Somewhere in Mumbai
Good job, perhaps (since it is open source) you could use github and then the community could help out with it? Just a thought but yea good job, very useful

OP mentions that his planning to release it on GitHub after few changes


Sent from my Galaxy Nexus using XDA Premium 4 mobile app

---------- Post added at 09:11 AM ---------- Previous post was at 09:07 AM ----------


Disclaimer

DO NOT USE THIS APPLICATION TO DO STUFF THAT YOU HAVE NO RIGHT TO DO.
THE DEVELOPER (Niranjan Rajendran) IS IN NO WAY RESPONSIBLE FOR ANY MISUSE OF THIS APPLICATION.



About

This is basically a Java Decompiler that 'trys' to extract the .java source code from an APK( Android application) file. There are many such decompilers that run on a PC. But, I didn't find one that runs properly on a android phone. So, i thought of making one, and , here it is :D

Features

  1. Runs directly on your android device
  2. Easy to use
  3. Displays code in a clean-syntax-highlighted form
  4. The decompiled source can easily be copied from the sdcard (source is stored in ShowJava folder in the sdcard)
  5. Simple source browser with a summary of all decompilation errors
  6. Each decompiled source file has commented references to classes that could not be decompiled
  7. And more to come ...

Download

Click to Download from play store ! (It's free!)
(or)
Get it directly from the DevDB Downloads panel of this project

Screenshots

Check out the screenshots here. (will upload more soon)

Source Code

This will be an Open Sourced project. Put I have some more work to do. And once that's done, I'll release the source code for everyone to benefit from.

Bugs

There are quite a lot of bugs. That's why this application is in an Alpha Stage. The major bugs are:

  1. Does not work with system applications in most of the phones (especially one's that are not de-odexed)
  2. Very slow decompiling process (I'd say it's a bit inefficient too)
  3. A Not-so-quite user-friendly Source Browser
  4. A Stupid progress indicator
  5. and some more ...

Reporting a Bug

Always please attach a logcat while reporting major bugs. You can report bugs via XDA's DevDB Bug Reporting option (or) send me an email at niranjan@leanlab.in

Reasons for Permissions

  1. Internet - Automated bug reporting
  2. External Storage - To store the decompiled source code and to have a working directory for the application

Credits

  • A Big-Huge Thanks to Lee Benfield (lee@benf.org) for his awesome CFR - Class File Reader :D :D
  • Panxiaobo (pxb1988@gmail.com) for dex2jar :)

XDA:DevDB Information
Show Java - A Java Decompiler for Android , a App for the No Device

Contributors
niranjan94

Version Information
Status: Alpha

Created 2014-01-07
Last Updated 2014-01-09


While decompiling some apps like Whatsapp the SystemUI gets corrupted and you need to data wipe completely to make the phone usable again.
Not sure if it only with my phone or with every other phone:confused:

Sent from my Galaxy Nexus using XDA Premium 4 mobile app
 

niranjan94

Senior Member
Jun 21, 2012
208
502
Coimbatore
www.github.com
OP mentions that his planning to release it on GitHub after few changes


Sent from my Galaxy Nexus using XDA Premium 4 mobile app

---------- Post added at 09:11 AM ---------- Previous post was at 09:07 AM ----------




While decompiling some apps like Whatsapp the SystemUI gets corrupted and you need to data wipe completely to make the phone usable again.
Not sure if it only with my phone or with every other phone:confused:

Sent from my Galaxy Nexus using XDA Premium 4 mobile app

I don't think application is causing that ... (the app does not (cannot) modify/access the SystemUI in anyway ).. pls check with ypur ROM developer (if you're using a custom ROM)
Hi its nice app and also helpfull but
could you add an option to choose an .apk file ?
instead of only choosing between all available apps that are installed.

thank you

Thanks ... and yea .. i plan to add support to pick an apk/jar directly from the sdcard and also plan to add a content provider for apk's and jars .. :laugh:
 

Top Liked Posts

  • There are no posts matching your filters.
  • 77

    Disclaimer

    DO NOT USE THIS APPLICATION TO DO STUFF THAT YOU HAVE NO RIGHT TO DO.
    THE DEVELOPER (Niranjan Rajendran) IS IN NO WAY RESPONSIBLE FOR ANY MISUSE OF THIS APPLICATION.



    About

    This is basically a Java Decompiler that to extract the .java source code from an APK( Android application) and jar files. There are many such decompilers that run on a PC. But, I didn't find one that runs properly on a android phone. So, i thought of making one, and , here it is :D

    Features

    1. Runs directly on your android device
    2. Select jar/apk from sdcard (or) from a list of installed applications
    3. Easy to use
    4. Displays code in a clean-syntax-highlighted form
    5. Decompiles XML Files (layouts, Drawables, Menus, AndroidManifest)
    6. The decompiled source can easily be copied from the sdcard (source is stored in ShowJava folder in the sdcard)
    7. Simple source browser with a summary of all decompilation errors
    8. Each decompiled source file has commented references to classes that could not be decompiled
    9. Runs in the background

    What's new in version 2.0.0 (Version Code: 20004)

    The first major update after the app's initial release on January 7th 2014. The app's entire code has been re-written (from scratch in many places) to make sure the app performs well up to the user's expectations.

    1. Updated to Material Design
    2. Performance improvements
    3. Updated to CFR 0.102
    4. Will now decompile xml resources (including AndroidManifest.xml)
    5. Fixed all the crashes experienced by users of the previous version
    6. Cleaned up the source code. (As I said, I rewrote it :wink: )
    7. The project is now fully open-sourced :v:

    Download (it's free)



    Screenshots

    Here you go ;-) .

    Source Code

    This will be an Open Sourced project. The source code is hosted at GitHub
    https://www.github.com/niranjan94/show-java/.

    Please read the License info before using any part of the code in any project.

    Bugs

    1. Does not work with system applications in most of the phones (especially one's that are not de-odexed)
    2. Slow on phones with single core processors

    Reporting a Bug

    Always please attach a logcat while reporting major bugs. You can report bugs via GitHub Issues system

    Reasons for Permissions

    1. Internet - Automated bug reporting
    2. External Storage - To store the decompiled source code and to have a working directory for the application

    Changelog

    Code:
    Version 2.0.0 (Aug 22, 2015)
    ===========================
    >> Updated to Material Design
    >> Performance improvements
    >> Updated to CFR 0.102
    >> Will now decompile xml resources (including AndroidManifest.xml)
    >> Fixed all the crashes experienced by users of the previous version
    >> Cleaned up the source code. (As I said, I rewrote it)
    >> The project is now fully open-sourced
    
    Version 1.9.1 (Dec 21, 2014)
    ===========================
    >> Crash Fix
    
    Version 1.9 (Dec 20, 2014)
    ==========================
    >> Improve topsort
    >> Fix bad chained goto removal.
    >> Remove references to labelled blocks if a labelled block break would end up in the same place as a natural scoped break.
    >> Reduce goto chain condensing in the presence of break statements.
    >> Handle duplicate field names
    
    Version 1.7/1.8 (Nov 7, 2014)
    =============================
    >> Fixed crash on new installations
    >> Fixed crash on devices running on Android Runtime (ART)
    
    Version 1.6/1.5 (Nov 4, 2014)
    =============================
    >> Improvements to SSA analysis
    >> Fix precedence issue on instanceof.
    >> improvement to handling some obfuscated switches which caused failure
    >> Minor Bug fixes
    
    Version 1.4 (Sep 29, 2014)
    ==========================
    >> Updated CFR to 0.87
    >> Fix precedence issue on instanceof.
    >> Rewrite variable definitions
    >> Better guess for anonymous inner types.
    >> Improvements to implicit cast checking.
    >> Handle empty switches better
    >> Fix bug which could cause some switch-on-enum statements not to be resugared.
    >> And more decompiler improvements
    
    Version Code: 3 ( 10-Feb-2014)
    ==============================
    >> Urgent Bug Correction (Please Update !) with dex optimisation
    
    Version Code: 2 ( 09-Feb-2014)
    ==============================
    >> Corrected force closes on certain devices
    >> Increased decompile speed by 3x times by skipping common libraries (like support library, actionbarsherlock etc)
    >> Added Option to Pick an apk/jar from sdcard (also associated apk/jar with Show Java for ease-of-use)
    >> Added history of decompiled applications
    >> A New, Clean and Minimal Progress Indicator
    >> UI Updated to a modern look
    
    Version Code: 1 ( 07-Jan-2014)
    ==============================
    >> Initial Release


    Credits

    • A Big-Huge Thanks to Lee Benfield (lee@benf.org) for his awesome CFR - Class File Reader :D :D
    • Panxiaobo (pxb1988@gmail.com) for dex2jar :)
    • jesusfreke (jesusfreke@jesusfreke.com) and bgruv (bgruv@google.com) for smali/baksmali/dexlib2

    XDA:DevDB Information
    Show Java - A Java Decompiler for Android , App for all devices (see above for details)

    Contributors
    niranjan94
    Source Code: https://github.com/niranjan94/show-java


    Version Information
    Status: Stable
    Current Stable Version: 2.0.0
    Stable Release Date: 2015-08-22

    Created 2014-01-07
    Last Updated 2015-08-22
    3
    I like this one! :D Tipped for news article! Good luck! :)
    3
    Pl. Provide the option for selecting apk from sd card .
    Hi its nice app and also helpfull but
    could you add an option to choose an .apk file ?
    instead of only choosing between all available apps that are installed.

    The option has been provided now in Version 1.3 (along with some other major bug-fixes) .. Please update :laugh:
    thank you

    Brilliant app! It would be great if you gave the functionality to exclude packages from the decompiling-process. I will definitely help you when you release your source :highfive:

    The new version (1.3) by default excludes some common libraries (support library, actionbarsherlock,acra,admob,bugsense etc) from the decompiling process making it much more faster now .. Please update .. :laugh:
    3
    OP mentions that his planning to release it on GitHub after few changes


    Sent from my Galaxy Nexus using XDA Premium 4 mobile app

    ---------- Post added at 09:11 AM ---------- Previous post was at 09:07 AM ----------




    While decompiling some apps like Whatsapp the SystemUI gets corrupted and you need to data wipe completely to make the phone usable again.
    Not sure if it only with my phone or with every other phone:confused:

    Sent from my Galaxy Nexus using XDA Premium 4 mobile app

    I don't think application is causing that ... (the app does not (cannot) modify/access the SystemUI in anyway ).. pls check with ypur ROM developer (if you're using a custom ROM)
    Hi its nice app and also helpfull but
    could you add an option to choose an .apk file ?
    instead of only choosing between all available apps that are installed.

    thank you

    Thanks ... and yea .. i plan to add support to pick an apk/jar directly from the sdcard and also plan to add a content provider for apk's and jars .. :laugh: