[Xposed Framework Modules] DMCShep:
Not to be a Negative Nancy, but it will require patience and a ton of effort to adapt from basic PHP to Java and pull it off. Not steering you away!! Just making sure you know this won't be an easy process and hope to not have you get frustrated before you even get your feet wet! I have 6+ years professional experience and know 20+ languages, but no spare time myself. It may take a month or more of spare time to pull this off. But I don't think anybody is active on this, and you're still better than zero people right? :)

If that was too discouraging (and I really only mean it to caution those expecting quick results so they don't expect to finish this in a week's worth of evenings), here's a lot of advice on what to do and how to dive in, from a seasoned veteran :cool: :

Review the current code in full, try to understand everything it is doing to the best you can. You don't have to understand everything here, the rest will likely make its purpose clear once you've debugged the code a bit. Once you've understood the code on it's own (which especially helps if you are learning a new language as it gives you a great syntax reference), make sure you can get it to compile correctly as is to an APK. Different signatures might not want to install on your phone right, just uninstall the original and install your version and your phone won't complain anymore -- I don't remember if it needs to compile to a phone first or not.

Then, third step would be to reverse-engineer the Android Auto APK. Both most recent that just came out today and as well the one where agentdr8 left off I would say, to give you an idea of where the functionality stopped and what needs to be done to fix it. Then, alter code and debug, a process I'm sure is familiar with any other coder. Also worthy of noting here, there were some code samples and a discussion that seem to have led nowhere but were heavily involved earlier in this very thread talking about fixes. That's a huge jump start.

A couple tools that will come in handy also: "logcat" and "wireless ADB". These two will let your phone be connected via USB to the head unit while still being able to send error messages or debug information from phone to a computer sitting in/near the car, so you can see in real time what is happening. Also watch for that pesky pause button in debug sessions.

One other neat and often unknown feature that all coders ought to know about: "break on exceptions". Basically, as soon as an exception is thrown, it sets a breakpoint on the error exactly as it's happening and lets you see the full context. Not just the ones that run afoul and crash everything either, but the caught ones too. This saved my ass and so many days worth of time over the years it is truly an invaluable tool to have. I don't remember if Android Studio has it, but do look into it if it does, it is abundantly useful. Oh yeah, and often you can disable certain exception types, so if you keep getting a pesky red herring, you can just decide you don't want to worry about that guy. Visual Studio and Eclipse have this, not sure about Android Studio though.

Hope that advice helps you (or anyone else interested in helping) out! I know I'm not the project maintainer or anything but advice is advice, and this should save a boatload of time trying to figure out where to go next and what the right approach is on a large scale. I've had to do this far more often than I'd like to admit across the years at my job, and sharing my advice seems to bring others up to speed in no time at all. Although full disclosure: I was never a professional Android coder, but I did make a couple apps in the KitKat days.