Hello, I would like to share this java decompiler with the community. FernFlower is the first analytic decompiler for java. It will decompile class files and jar files to human readable java code. Unlike JD-GUI it does not decompile to byte code. It also will deobfuscate the source if you ask it to. This tool should work well with dex2jar. The files are attached. It requires java to run.
I take no credit for creating this tool. I will still however release the decompiled and deobfsucated source code.
DISCLAIMER: I CANNOT GUARANTEE THAT THE SOURCE OF THIS TOOL WILL ACTUALLY COMPILE
Sorry for reviving that old thread, but this is currently the first Google result for "fernflower", so I think it would be nice to post here to guide people looking for more information about this decompiler. Fernflower should get more popular now, since it is integrated in the IntelliJ IDEA version 14 IDE, which is very popular including among Android developers.
The source code posted by ostar2 was decompiled from the Fernflower binaries. The good news is that the original sourcecode is now available and under Apache license.
It includes the standalone decompiler which can be used outside of the IDE:
Code:
CLASSPATH=java-decompiler.jar java org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler
IntelliJ 14
IntelliJ 14 adds support for fernflower decompiler by default!
http://blog.jetbrains.com/idea/2014/07/intellij-idea-14-eap-138-1029-is-out/
Related
I'm currently studying to become a software engineer.
Each semester we have a some courses and a project we must complete, next semester the overall project theme is "Languages and Translation", in other words: code your own compiler.
A typical project suggestion is translating language "X" to language "Y" (just a subset of the language).
So I've been wondering how to make the project a bit more exciting, since programming, testing, debugging etc. all taking place in an IDE can get a little monotonous.
Some of the things I've been pondering (along with my study group) include:
1. Implementing a Compiler on Android - Compile one language to another. We are not talking about compiling code that would then run on android, most likely we won't even be generating executable files, just translating. It is quite pointless, but this is just a school project after all so don't worry too much about that.
2. A distributed compiler - like "distcc", a port of gcc that is distributed across multiple systems, but ours would be for a language other than C. I think this one might be biting off more than we can chew at the moment since it's two projects in one, but it does sound like a fun challenge.
3. Adding functional programming to an imperative language - if we made a pre-compiler of sorts we figure it's possible to support functional chunks of code in a normally imperative language.
4. Compiler for Arduino (a microcontroller platform) - Since we have prior experience with the arduino platform, we are trying to come up with a compiler relevant project that uses the arduino in some way. Could be translating another language to the C/C++ based arduino language.
Yes, only one of our suggestions so far relates to android.
If anybody has suggestions for interesting projects I would love to hear them, only important thing is that the project includes some sort of compiler, it doesn't have to relate to Android in any way.
Thanks for your time.
Android coding secrets revealed in codeherenow.com
Rush up to know more about Coding technique and also for Source code.
codeherenow.com site is a perfect package for both Android/iPhone Developer or The Folks Who wish to learn those stuffs
Enjoy coding
Hey devs, lawyers and people who know about GPL
I have a question about using GPL'ed source code in a closed source application.
Another question has been easily answered in the news comments, but as libav/ffmpeg is LGPL and has a nice legal.html it was solved quickly.
Here is what it's all about:
- I'm going to use Linux kernel drivers code (several (ten-)thousand lines of code across 10+ files) for several USB devices using JNI and the Android USB host interface
- I'm writing a wrapper / "glue" library so almost no changes have to be made to the GPL code (to keep compatibility with newer versions of the GPL code)
Now my question is: Can I link all the *.o in one shared library or do I have to separate GPL code and wrapper (may be closed source) code into different shared libraries (wrapper may still link to GPL code).
If this is illegal, does my wrapper code have to be GPL'ed as well, because it links against GPL code?
And how much / what of my application has to be GPL'ed since it uses GPL'ed code in any way?
As you can see I'm a bit confused about all the GPL stuff and don't want to get sued or blamed for violating the GPL.
PS: I'm still not sure if I may open source the app or not, but in case I don't want or can't to, I want to be legal at least.
I've done some more research and found out that it is not possible to link closed source directly to GPL'ed code, BUT it is possible to link against LGPL which itself is compatible with the GPL.
So in other words: The wrapper library itself will be open-sourced under the LGPL but the Android application, where most of the work will be done (UI, services, device handling, interfaces, etc.), may be still closed source.
Does this work?
chrulri said:
Does this work?
Click to expand...
Click to collapse
No, it doesn't. Read me. Unless one will pipe all the data flow through command line interface where the GPL'ed binary is running in a separated process (e.g. child process). Well even this is still a "slippery" path, concerning legal issues.
I guess I'll just GPL my app and hope for donations once it's published.
I am starting android dev soon.
I want to use open source apps and modify them than publish them to google play for commercial use?
Does open source really mean I am able to use the open source code from f-droid and modify and use for commercial?
Is this how developers are efficiently coding these days? Is writing a program from scratch obsolete if it is available in open source?
Does anyone know any successful google play store apps that are purely based off open source? It would be helpful to see examples.
Muzei and Dashclock are both open source and good examples of how android apps should be.
But be aware that just because an app is open source that doesn't mean you can modify it and distribute is as your own
I have recently been developing a middleware library that helps you to develop mobile applications, faster and easier than before. Finally it is live at https://topping.dev . This project started in 2012 to reduce time developing applications on android and ios platforms by creating a topping layer on mobile operating systems. All you need to know is how Android layout XML works and basic Lua or Kotlin knowledge. After developing it from time to time, I decided to make it open source. The project is in beta stage but most of the functions work. With the help of the open source community, I hope it will expand and grow and become the best of its kind. Also there are WPF and Web proof of concepts at github. http://github.com/topping-dev