[Android General] PeteS160:
First I want to make this clear right from the start that I am the developer/author of the app I am wanting to reverse engineer. There is nothing illegal or questionable about my intentions.

If I have posted this in the wrong section I do apologize and would ask that it be moved to the appropriate section.

Before I go into any specifics of what the app does or what it is used for; the reason why I am wanting to reverse engineer the apk back into source code has a somewhat unique origin that very few people will ever encounter. About 4 years ago I began development on my app that is now known as Ls Droid. I did not know any Java code and I had an idea at the time that lead me to find a development tool created by MIT that was known as App Inventor 2. If you've never heard of this before, App Inventor is a GUI based programming language based on Googles Blocky that allows the user to combine various types of blocks that each represent different code functions and create working Android apps. I'm not going to discuss how App Inventor works but you can read the overview of it at appinventor.mit.edu/ . Over time my app outgrew what MIT's version of App Inventor was capable of and I moved my app to another platform(Thunkable) that was still based on App Inventor but greatly expanded on it's functionality and was capable of dealing with larger projects than what the MIT servers would allow. I used Thunkable for several years and ran my app though it's entire Alpha development life cycle and into an open Beta. Unfortunately Thunkable had been creating their own(improved) version of App Inventor from the ground up and not only was it incompatible with app's created on the App Inventor platform but they did not include many of the things my app required to work and I was forced to look for another platform to move my app to in order to continue development. Unfortunately by this point all of the spin off versions of the original MIT App Inventor had created advertising components and the majority of people using these GUI based programming platforms were now focused on creating earning apps. As a result the people running spin off versions of App inventor are now focused on providing tools based around add based apps and less interested in fixing basic functionality for core components as they are rarely used in earning app.

So this brings me to my current situation. The compiler used by the current GUI programming platform I have been using for the last 8 months or so has become unreliable and buggy. Core functionality of how specific blocks function has also been altered several times in the last 6 months and each time a change like this is made requires dozens of hours to restructure my apps logic to work with the new changes. I have tried to leave these GUI based programming platforms several times and move my app into Android Studio but have never been successful. Attempting to recreate my app from scratch in Android Studio would be a massive undertaking even for someone fluent in Java and I only have a basic understanding of Java at best. I can however work from existing code and alter or restructure it with out a lot of trouble and that's basically all I need to do in my app at this point.

I have worked with a number of people in the past who have tried to help me turn an APK back into source code that worked in Android Studio and about a year and a half ago I was working with someone who was able to decompile the app and successfully import it into Android Studio where it did mostly work with the emulator. Unfortunately this person was killed in a car accident, I do have a copy of what they had done that was close to a working version but I was never able to get a copy of the source they had working in Android Studio. I have had a couple of other people look at this code since then but no one else was able to do anything with it. At this point the version that was being worked on that did open in Android Studio is old enough that it bears very little resemblance to the current version of the app and attempting to even work from this code now would be a massive step backwards.

In the past I have always looked for help from automotive reverse engineering forums since my app has a very unique purpose, it is used to read and write the binary code from an engine's computer on a number of General Motors vehicles that are popular/common in the hot rod community using a Bluetooth tool connected to the vehicles OBD II data port. I created this app to remove the cost barrier that had previously been required when you wanted to make changes to an engines program on fuel injected vehicles....my app is free and uses a relatively cheap OBD II tool. There are thousands of people that have used my app over the last couple of years and successfully re-tuned their vehicle with many of these people being able to do this with no cost out of pocket as they already had the tool my app was designed to work with.

My app is now at the point where even making basic changes or bug fixes is becoming an issue due to constant changes in the GUI based programming language. I have exhausted the help of various automotive community's, mixing smart phones and cars was a long shot in the first place and here I am 4 years later with a very successful app but it's well beyond what my network of car hacking colleges are able help me with. It's no secret that XDA has some of the best Android developers(and hackers) anywhere on the web so I figured this would be the best place to turn to for help.

Maybe this would be fun for someone here? I doubt people get a chance to decompile and reconstruct an app legally....and if they do it's extremely unlikely it was done on an app built with a program like App Inventor. I have no issues making my apps source code public so I have no issues discussing anything to do with this publicly, but if someone would prefer to discuss this by PM or Email I'm fine with that as well.

My app can be found at ls-droid . com near the top of the page, there are a couple of versions posted currently with 2.2B being the last public release but it's not exactly current. I do not want to post the APK for the most recent version of the app I have been working on at the moment on the off chance someone wanting to use the app were to find it since it has some pretty nasty bugs right now due to compiler changes. You can search Youtube or Facebook and should have no trouble finding information on my app if your wondering how it works.