yashsingh1/xdaforums huggingface dataset:
[Xposed Framework Modules] agentdr8:
I've posted a new version which should work with AA 3.4.582xxx. I tested it on my m8 running AA on the phone, but not hooked up to my AA headunit. Please let me know if this version works for you guys, or if there's any errors in the xposed.log.

I'll update the Xposed Repo here shortly.
[Xposed Framework Modules] shmykelsa:
New version not working on my car
[Xposed Framework Modules] agentdr8:
Any logs with more details? There's no overrides for built in vehicle sensors, like gear selection, parking brake, etc.
[Xposed Framework Modules] Virnik0:
Hi, could you please allow other 3rd party apps to work? I mean something like a CarStream. Android Auto tries to limit these apps, forbidding them to either load, or function. And this module can save the situation.
[Xposed Framework Modules] krilok:
Tried the latest version, but unfortunately not getting it to work; still get the pay attention to the road warnings... These are my settings:

Screen Taps: 999 taps

Max Parked Sensor Speed: 1 MPH

Content rate limiting: Disabled

Passenger Mode Feature: Enabled

Debug: Disabled

Any suggestions? :confused:
[Xposed Framework Modules] agentdr8:
CarStream 2.0 addresses the limitations imposed by Google if your device is rooted. If you're running Xposed, then most likely your device is rooted.

See the release notes: https://github.com/thekirankumar/carstream-android-auto/releases
[Xposed Framework Modules] Virnik0:
You're mistaken. CarStream does not address anythibg, it just looks for workaround, which eventually always fail. That is the reason why I thought that having feature in xposed could provide more persistant solution.
[Xposed Framework Modules] agentdr8:
I was referring to 2.0 release of CarStream specifically. But in general, everything that is released on xda (and elsewhere) for AA is likely done in some workaround/hackish fashion, as Google does not expose an API for 3rd party apps in AA, especially not ones that could distract drivers. And after reading the thread on the unofficial AA SDK, I can definitely see why they would choose this stance.

While an Xposed module could potentially workaround the limitations imposed by Play Services and AA, it's not within the scope of this particular module.
[Xposed Framework Modules] agentdr8:
Max Parked Sensor Speed should be set high. I think the default is 150MPH. This should trick the speed-based parking/wheel sensors into thinking you're parked until you exceed the selected speed.

I'm still trying to debug some other scenarios in which the content browse "speed bump" shows up. This is a different warning than the "Browsing locked for safety" message, which I'm running into on the emulator. That appears to be car sensor-related, but I can't be sure.
[Xposed Framework Modules] agentdr8:
Is the exact text "Focus on the road" when this pops up? Having the string verbatim helps me reverse where in the code the message is being shown.

Also, are you connecting your phone to an AA headunit or vehicle, or are you using AA on the phone itself? It appears from the code that the warnings shown are different depending on how you have it hooked up.
[Xposed Framework Modules] krilok:
Thanks for the clarification. I misunderstood, then... I'll give it a shot in the morning again and post back results. :good:
[Xposed Framework Modules] agentdr8:
All, try the latest version (1.8.1) and see if that helps with the warning messages. I have it working with the desktop emulator and it seems like it should be working. I even tested the controller-based input and it seems like using a scroll knob should work. At least in Spotify, where it normally shows me "Browsing locked for safety" it no longer pops up.
[Xposed Framework Modules] krilok:
Tried the latest version (1.8.1) and this time set the 'Max Parked Sensor Speed' to 150Mph... Tried Spotify this morning and although I still got the 'Focus on the Road' and subsequent beep warnings after a few taps, the track list wasn't 'greyed out' and I could still continue scrolling even with the warning message on screen...
[Xposed Framework Modules] agentdr8:
That sounds like progress! Are you using AA on your phone, or are you hooking it up to a headunit/vehicle via USB/wifi?

Also, can you enable debugging in the module settings, and then provide me the xposed.log from Xposed Installer -> Logs?
[Xposed Framework Modules] krilok:
PM sent with logs. BTW, I'm using AA plugged in on my car's built-in head unit.
[Xposed Framework Modules] agentdr8:
I posted another update on the OP. Found another method where it tries to show the warning speed bump and bypassed that. Please test and report success/failures.
[Xposed Framework Modules] bggold:
When browsing phone contacts the blocked for safety message still appears but you can still tap. Just an FYI does not cause an issue just cosmetic.

Edit: enabled passenger mode and that fixed it.

Thanks
[Xposed Framework Modules] CUBENSIS:
Version 1.8.1 working perfectly on my Audi (scroll wheel). Thanks [MENTION=434511]agentdr8[/MENTION] !
[Xposed Framework Modules] Ralfioni:
I just installed 1.8.2 and it "kind of" works in my Audi. The warning message and the beep (when it's done) are still there, BUT I can continue scrolling in the background. Is this the same behavior you guys observe? (EDIT: I have passenger mode also enabled, as mentioned post #356) At any rate, it is a HUGE improvement and makes Google Play Music pretty much usable now. So thank you, thank you, thank you!

Spotify on the other hand still only shows me the next 15 songs in the queue. I suppose this is a limitation in Spotify's app, isn't it? Is this the same for you guys, too? If so, why would Spotify put this additional restriction in their app?
[Xposed Framework Modules] agentdr8:
I'm wondering if the warning and beeps for those of you with integrated headunits comes from the headunit itself, and not AA. It might be communicating with AA via the CarSensorManager class, and injecting its own warnings. I can't say I've ever heard a beep after the warning on my aftermarket headunit, and I'm fairly certain I found everywhere in the AA source where the built-in warning messages are used/displayed.

I'll have to reverse Spotify and see if they're doing something when connected via AA that would limit what songs it shows. I don't think when I use Spotify via AA I've ever seen a song queue. How do you navigate to it?
[Xposed Framework Modules] krilok:
The song queue is the icon with the three horizontal lines and musical note, and it's always visible on the far left, next to the previous track icon... As for the warning and beeps, they're accompanied on screen by a large green bar 'scrolling' from left to right, although with your module even while the warning is there we can still scroll through whatever list is on the background... By the looks and design of the warning, I'd say its part of AA rather than the headunit, but maybe I'm wrong.
[Xposed Framework Modules] agentdr8:
Strange, I don't see this on the emulator or in my vehicle when using Spotify. Is it a Spotify Premium thing maybe?
[Xposed Framework Modules] krilok:
This is a screenshot of AA running on my phone, not on the headunit, but it would show up in the same way... The music queue is the one on the far left.
[Xposed Framework Modules] Ralfioni:
Either it's a premium feature or you are running a different Spotify version (I'm currently on 8.4.63.584) or maybe it has something to do with screen resolution (Audi's display is wider than 16:9, I think). On my phone it looks like krilok's screenshot. I can send screenshots from my car, if it helps?

FYI: I have the same playlist icon on Google Play Music (no premium account). However GPM does not impose this 15 songs limit.
[Xposed Framework Modules] agentdr8:
If both of you have Spotify Premium, then that's likely it. I have the song queue button for GPM on my phone and standard 16:9 AA headunit, so it probably isn't a layout issue.

I decompiled the latest Spotify version (8.4.63.584) and it looks like it's using the standard AA media controller, so the limitations should be imposed by AA. I would imagine GPM would also use that service as well, since they're both Google products, but that may not be the case. I can't seem to find where in the AA source it tries to enforce this limit though. Is it always exactly 15 songs in the queue?
[Xposed Framework Modules] Ralfioni:
Yes, it is always exactly 15 songs. Since GMP does NOT impose this additional limitation I assumed it was imposed by the Spotify app itself.

I have attached screenshots of GMP and Spotify with opened overflow menu. HTH
[Xposed Framework Modules] krilok:
1 - I'm also running Spotify Premium.

2 - 15 song queue, too.
[Xposed Framework Modules] agentdr8:
Thanks for the additional info. I'll go back through the Spotify code and see if I can find this limitation.

Has Spotify ever shown more than 15 songs in the queue? Like if you're not in motion/parked? Or has it always been this way?
[Xposed Framework Modules] Ralfioni:
Does not matter if in motion or parked - the limit has been there for as long as I have been using Spotify on AA. HTH
[Xposed Framework Modules] krilok:
Limit is there no matter if parked or moving...
[Xposed Framework Modules] Mandrag:
I want to say thanks a lot for this. The latest update with warnings bypass works like a charm, and I can finally use Android Auto the way I want in my car to select the music albums I want. My only regret is that I now really fear the time when I have to buy a new phone without root and Xposed, how terrible to go back to the "Locked out for safety" hassle again (which if you ask me is even more dangerous while driving, since I've found myself multiple times having tried to figure out to play music I want with only 6 taps ending up with being locked out, or even struggling with the awful voice control). Or would it be possible to build the Xposed module into the Android Auto apk itself, so you don't have to have root perhaps?

Anyway, thanks!
[Xposed Framework Modules] pjcamp:
Here's a secret -- you aren't actually locked out. You're just forced to do something more dangerous.

Your "passenger" can access your phone while Android Auto is active. Your "passenger" can open whatever app you are using and search for whatever you want and play it. Your "passenger" has a lot more freedom than you do but has to look down to do it.
[Xposed Framework Modules] agentdr8:
Unfortunately that isn't possible.
[Xposed Framework Modules] Mandrag:
Thanks for the tip. However, if you want to drive legally that is kind of out of the question since driving with the phone in your hand is illegal where I live. The thing I really like with Android auto is that you don't have to actually look down, but can keep part of your vision still on the road which is fine for highway driving. As has been stated here previously, the ridiculous thing as always is that you can mess with the cars own interface all you want...

Ah, that's a pity. Thanks for letting me know!
[Xposed Framework Modules] mistermojorizin:
I use a magnetic vent mount. So that way I'm just swiping on the phone with one hand and not holding the phone. It's a nice second screen if I want to have Google maps on the 8 inch aa screen and waze ruining on the little 6 inch screen, for example.

Question: should I hold of on updating aa from play store until this module gets updated?
[Xposed Framework Modules] agentdr8:
Yes. Unfortunately Google has obfuscated the code in AA since around version 2.x, so the module has to be adapted to every version that comes out.

That being said, it sometimes helps bring it to my attention that a new AA version is available if someone posts in this thread.

I'll try and work on 3.5.583xxx and post something shortly.

EDIT: Updated first post (and Repo) with module for AA 3.5.583xxx -- Please let me know if there are any issues.
[Xposed Framework Modules] SyCoREAPER:
I apologize if it was asked, did a quick search but saw nothing.

Any chance of porting this to Magisk it does the framework not have the capabilities to do what xposed is?
[Xposed Framework Modules] agentdr8:
Magisk modules can't do process injection, which is what Xposed modules do. It can do system-less file edits, replacements, etc, but that wouldn't apply here.
[Xposed Framework Modules] agentdr8:
Welcome, and thanks for the log. The module appears to be working, but you're encountering the one outstanding issue that's been documented. I haven't been able to replicate this behavior, but I'm guessing it's only on native integrated AA units in vehicles, not on aftermarket AA headunits. Testing is rather difficult in this scenario, as I don't have a vehicle with AA, so I don't even know which methods to hook to try and read off sensor data, or even to enumerate which sensors are present.

Ideally, I'd be able to override that message from appearing entirely, but for now, at least you should still have the ability to scroll and tap, just with the warning being present.

Also, try increasing the parking speed limit in the preferences. I should probably change the wording since it's rather unclear, but from what I can infer from the code, any speed less than the one you select via the slider and AA assumes you're parked, which is what we're after. So if you set it to a really high value, say 100MPH, AA will not think you're moving, and shouldn't show warnings until you exceed 100MPH.
[Xposed Framework Modules] Liquid50:
I tried different speed settings but no difference in operation. Your probably right that it has to do with my stock unit vs aftermarket. But something that you did unlocked the scrolling at least and thank you for that.
[Xposed Framework Modules] radici:
ok I’m a bit lost even after searching ...what is content rate limiting?
[Xposed Framework Modules] agentdr8:
That shouldn't be too hard to do.

Just out of curiosity, what intent did you have in mind? Or what is your use-case going to be? I'm trying to think of something I would want to do on the phone without any feedback on the headunit while driving and I can't think of anything.
[Xposed Framework Modules] chevyguy128:
I noticed in google maps, when in park i am able to type an address as soon as i move to,drive even fully stopped the text field turns to a mic and i can no longer type. Is this able to be changed? It seems google maps is using another hook to find if the car is in park or not.
[Xposed Framework Modules] agentdr8:
This is part of the CarSensors class most likely. I couldn't test any of it, as I don't have an integrated headunit (it seems only the built-ins use this for now).

If you're up for some testing, I can throw together a package that will do some logging of values. I'd need to have you go through some scenarios (shifting between park & drive, ebrake up/down, drive + ebrake up (not moving of course)) to know which methods to override, and what values.
[Xposed Framework Modules] chevyguy128:
Sure man, i can do so to help others and yourself
[Xposed Framework Modules] acinad:
I didn't run into any bugs using this on my Droid Turbo 1 running stock w/xposed. I just had much higher battery drain than usual that day. I wasn't even using my phone, it was just sitting at my work desk. I disabled it the next day and battery was back to normal. I still really appreciate the work you've put into this!

Would it be possible to add a feature that lets you use side loaded apps? I've got TuneIn Radio Pro from Amazon Market, but it doesn't register on AA even though TuneIn Radio from GPM does.
[Xposed Framework Modules] agentdr8:
I'm not sure that this module could impact battery, as it only hooks methods within the Android Auto process and overrides integer and float values. Android Auto could possibly not exit/background properly though, or keep the GPS active when it shouldn't be.

This can be done via adb. There's a post about it here. Changing the install vendor might break how the Amazon Market validates the app is able to run on your device though, so take note of the install vendor first.
[Xposed Framework Modules] manos78:
Sure! My idea is send and capture "any intent" with an external App. For example, one of my first goal is "enable/disable wifi hotspot". :laugh:

Any kind of automation is welcome! :fingers-crossed:
[Xposed Framework Modules] timhow:
I'm experiencing about a 50% success rate with this Xposed mod. Just seems to suddenly work on it's own. Had my phone plugged in and kept getting the message about hitting my limit on screen presses. Unplugged and then re-plugged in the phone and got the same message. Try again a few minutes later without touching the phone and suddenly the mod is working. Not sure if it's the mod or if I'm just doing something dumb and not realizing it. GravityBox mod is working without a hitch. Any ideas?

Nexus 6P with 2016 Honda Civic.
[Xposed Framework Modules] agentdr8:
Can you enable debugging, reboot, and provide me the Xposed Installer log after you've tried it out a few times? It's possible I've missed overriding something.

Also, in your Civic, does it have a built-in Android Auto headunit? Or are you using an aftermarket one? There's still some work that needs to be done for built-in units to cover all of the different car sensor inputs.
[Xposed Framework Modules] timhow:
Debugging is enabled. where can I find the log?

I'm using the built-in head unit. Touring model Civic, if it matters.
[Xposed Framework Modules] agentdr8:
In Xposed Installer->Logs. Use the 3-dot menu to save it or send it to yourself, and then attach it to a post here.
[Xposed Framework Modules] timhow:
hope that's the right one.
[Xposed Framework Modules] agentdr8:
Yep that's it. Try setting the unlimited browse speed to something higher, like 45+. I'm not quite sure of all the relationships between the different settings, but it's possible they both need to be set to above their defaults in order to do what you're hoping.

Aside from that, I see no errors, so it's properly hooking the AA package and overriding the values. I'm still working on a test package for [MENTION=2915358]chevyguy128[/MENTION] but the outcome of that will likely benefit you as well.
[Xposed Framework Modules] timhow:
thanks for looking into it. I did have the browse speed set to maximum but recently dialed it back down to minimum to try to rectify the issue I was having. I'll set it somewhere in the middle to see if that helps.
[Xposed Framework Modules] agentdr8:
Here's a test package that does some logging of sensor values to the Xposed Installer log. If you could install, enable, reboot and run through some scenarios (car in park, car in park with ebrake engaged/disengaged, car in drive, car in drive w/ ebrake engaged (not moving!), etc) (keep mental or written notes of each scenario in their order, so that it makes deciphering the output easier), that would be great. Post the log here afterwards and I should be able to determine what needs to be changed.
[Xposed Framework Modules] timhow:
potential dumb question.....for the "car in drive" part, do I need to be moving?
[Xposed Framework Modules] agentdr8:
Well, it's likely you'll run across both a "car in drive, but stopped" (red light/stop sign) and "car in drive, while in motion" (freeway/surface street) scenario, and the sensors should output different things each time. Initially I'm just looking to determine which sensor is giving which value when in park vs. drive and see if overriding that is enough to trick AA into letting you see the keyboard in Google Maps for destination entry. If it then turns out that being in "park" but moving trips up AA, then I'll try and override the values for speed as well.
[Xposed Framework Modules] chevyguy128:
Thanks, i been busy on cableing jobs and getting home late and running around, will do this in the next few days when i have a sec , thanks for looking at and makeing this (most likely it will be this weekend) how do i pull the logs? Also do i need to clear them,first?
[Xposed Framework Modules] agentdr8:
Launch Xposed Installer->Logs->3-dot menu->Save (or Send). You can clear the logs from the same menu prior to launching Android Auto after enabling the module, but it's not necessary.
[Xposed Framework Modules] timhow:
Log attached. These are the steps I did after hooking up phone and engaging AA:

car in park

car in park with ebrake engaged

car in park with ebrake engaged and brake hold on

car in park with ebrake engaged and brake hold off

car in park with ebrake disengaged

car in drive

car in drive moving

car in drive with ebrake engaged

car in drive with ebrake engaged and brake hold on

car in drive with ebrake engaged and brake hold off

car in drive with ebrake disengaged

car in park

disconnected phone

Hope this is what you need.
[Xposed Framework Modules] agentdr8:
It used to be after a certain amount of content was shown over a period of time, it would limit further scrolling. After 3.x came out, they changed pretty much all of the settings I was overriding with the preferences.

For the next release, I'll probably remove all of the preference settings except for the debug since I think most people's goal is to just bypass as many restrictions as possible.
[Xposed Framework Modules] radici:
Ah, thanks for the reply. Just wish Spotify would change the 15 song limit... it is beyond annoying.
[Xposed Framework Modules] xs1337:
Hello, I have a 2018 Acura MDX with AA 3.5.583024 installed on my Pixel 2, and despite leaving the default for "Max Parked Sensor Speed" (150 mph), I'm still getting the "can't browse" error message. I have tested it with doubleTwist. Unlike what was said before, I can't ignore the error and keep scrolling down, it blocks me. I can scroll back up, but not down. I have to stop moving the car for the message to go away (I can leave gearbox in Drive but I have to stop moving). I have no GPS function in the car. I tried checking the other 2 boxes "content rate" and "Passenger mode" but it doesn't help.
[Xposed Framework Modules] agentdr8:
Thanks for the feedback. Even though your vehicle has no GPS, it still can relay speed information via CANBUS to the headunit, which AA in turn can interpret as "moving". Unfortunately I do not have a vehicle with integrated AA, so debugging what the built-in headunits are sending to AA is something I'm not able to perform.

I've tried to read off data from the CarSensorEvent class before via a test module but couldn't infer anything. When I have some free time, I plan on trying to put together another test module that does data logging. With a well-defined testing regiment, I should be able to correlate the output data with the given inputs, and then modify the main module to account for those scenarios.
[Xposed Framework Modules] xs1337:
Thanks, I wish I could help in some way. I'm actually a software dev (no mobile experience but I learn fast). If you think I can help let me know how. I've actually tried pulling the XPOSED log for you, but it came out empty (even with the box checked). Not sure why. I'll try again tonight. I hate how they restricted AA, especially as compared to Apple!

Edit: the module doesn't write anything in the log. All I can see in the log is that it's getting loaded up by the framework.
[Xposed Framework Modules] wowzors:
I understand this mod will allow me to see further in my recent playlist for spotify while in Android Auto but will it enable the keyboard so I can search for a song? The voice command searching in spotify is....lacking.
[Xposed Framework Modules] pjcamp:
There is no keyboard to enable in Android Auto.
[Xposed Framework Modules] agentdr8:
If you checked the box for debug and restarted your device, it should show more than just the loading of the module by the framework. There should be a number of lines prefixed with date/time and SAAX.

It's possible that your Xposed framework isn't working 100%.
[Xposed Framework Modules] xs1337:
I've completely wiped my Pixel 2 (8.1 Oreo) and re-rooted it (Magisk then Xposed). I installed a bunch of modules such as SAAX, Gravitybox and others, then rebooted. I get a ton of log written by these modules but not SAAX. All I get is that the SAAX module/class were loaded, and that's it. Nothing after that. :confused: