Hi,
I'm disappointed with AA. I think there is some space for an open source alternative to this system which is so closed.
Moreover the end of life of the standalone version makes me feel that Google doesn't care much about their customer experience.
I tried the Google Assistant driving mode and it's... a disaster for now.
I think it would be easy to create a great AA like launcher. But to make it succesfull there must be a community and an ecosystem around that. Apps are important even in automotive context.
Typically Waze is a key app that many drivers want.
At this time I'm wondering what is the best approach to start this kind of project. I see few show stoppers and I'm interested to get some thought from you about that.
1/ Head unit integration : long time ago I worked on the reverse engineering of the AA protocol. I discovered that the protocol is using SSL certificates. Head units holds a public key and mobile use a private key provided by Google Play Services. The problem is that these certificates have very short lifetime (about 6 months) and if I remember fine the root cerificate will expire in 2030 or something. I don't think that head unit s check the expiration date anyway (because many of them don't have system time). But for sure you need a Google private key in order to initiate communication with a head unit. The key could be captured decompiling code few years ago, don't know if it's still as simple as that.
If head unit really don't check the expiration date then it could be possible to replace the whole AA stack with an independent one.
But even if this work I'm not sure it's possible to disable the native AA protocol and take control of the USB port without rooting.
2/ Apps integration. There are 2 categories of Automotive apps : media apps and navigation apps. I think there are also a category for messaging apps.
Navigations apps are apps that provides an automotive friendly display. Waze does this for example.
Media apps are easy to integrate becaase they rely on the legacy mediabrowser APIs.
Integrating the navigation apps is tough. Because these apps are exposing a special AA service that only privileged apps can invoke (by default).
However apps dev can also allow a third party app to connect their dispkay service. This won't ever happen except if the car launcher become mainstream.
Good point is that would not require any change in implementations : it's just an access right problem.
I have seen a lot of car launchers in Play store. They all display the apps on native mode which is not what you want while driving.
Any comments to this ?
I'm disappointed with AA. I think there is some space for an open source alternative to this system which is so closed.
Moreover the end of life of the standalone version makes me feel that Google doesn't care much about their customer experience.
I tried the Google Assistant driving mode and it's... a disaster for now.
I think it would be easy to create a great AA like launcher. But to make it succesfull there must be a community and an ecosystem around that. Apps are important even in automotive context.
Typically Waze is a key app that many drivers want.
At this time I'm wondering what is the best approach to start this kind of project. I see few show stoppers and I'm interested to get some thought from you about that.
1/ Head unit integration : long time ago I worked on the reverse engineering of the AA protocol. I discovered that the protocol is using SSL certificates. Head units holds a public key and mobile use a private key provided by Google Play Services. The problem is that these certificates have very short lifetime (about 6 months) and if I remember fine the root cerificate will expire in 2030 or something. I don't think that head unit s check the expiration date anyway (because many of them don't have system time). But for sure you need a Google private key in order to initiate communication with a head unit. The key could be captured decompiling code few years ago, don't know if it's still as simple as that.
If head unit really don't check the expiration date then it could be possible to replace the whole AA stack with an independent one.
But even if this work I'm not sure it's possible to disable the native AA protocol and take control of the USB port without rooting.
2/ Apps integration. There are 2 categories of Automotive apps : media apps and navigation apps. I think there are also a category for messaging apps.
Navigations apps are apps that provides an automotive friendly display. Waze does this for example.
Media apps are easy to integrate becaase they rely on the legacy mediabrowser APIs.
Integrating the navigation apps is tough. Because these apps are exposing a special AA service that only privileged apps can invoke (by default).
However apps dev can also allow a third party app to connect their dispkay service. This won't ever happen except if the car launcher become mainstream.
Good point is that would not require any change in implementations : it's just an access right problem.
I have seen a lot of car launchers in Play store. They all display the apps on native mode which is not what you want while driving.
Any comments to this ?