Questions about CTS/VTS and CDD for android 10 - cts

We are developing Head Unit for Automotive and using Android 10.
We won't integrate Google Play Services on this. I concern that we have to run and pass CTS/VTS or not? And, Do you have compliant all items in Android CDD?
Please help us to make clear.

Let's assume, you are not Integrating the GMS Package, which would be the case like OEMs - Zebra, who launches their product without GMS suite, in this case, you can avoid testing and certification for GTS but if you claim, your phone is android then you have to pass CTS, CTS on GSI, STS, VTS, CTS Verifier compulsory.

Related

Can I make Roku app using flutter? if I Can how can I run

I want to make a Roku app using flutter but don't know how can i run Roku app in flutter using android studio
Unfortunately no.
The only similarity Roku has with Android is Linux in its roots :)
To make Flutter work for Roku, you will need at least to add the possibility to display Skia canvas on the platform. To do so, most likely you will need NDK because BrightScript is poor for such purposes.
When I was working with Roku, NDK was not in public access, you had to write them directly via email to ask for it. And if Flutter SDK for Roku exists, you will still need to ask Roku to use NDK in your app because you will need it at least to initialize the project.
So yes, if one day an initiative exists, both Flutter and Roku teams will need to make efforts to make this idea alive. Btw, there is a request for Roku support to the Flutter team created in 2019: https://github.com/flutter/flutter/issues/37159

How do you setup automated-tests for Capacitor native apps?

Capacitor allows us to code once then generate web, Android and iOS applications. Most people using Capacitor will generate native Android and iOS applications.
But strange enough, I can't find any documentation about how to create automated-tests for the two native applications. I can easily test the web application using protractor, jasmine or whatever. But when it comes to native apps, I can't hardly rely on native tooling (Android Studio and XCode) as there are other issues preventing me from testing it easily (ex: no possibility to set Accessibility ID through the views markup, etc).
Where are we at with Capacitor native apps automated-tests ?
I believe this is what you are looking for Ionic/capacitor Integrations for Testing
As far as the community/forums and official docs go there are only 3 ways you can test your apks
Native [Andriod Studio / Xcode] [Emulated versions]
Real Devices
3rd party Integration listed in the link above..
Even on google there very less info on this topic.. most of the blogs/ articles only say that Ionic/Capacitors can be tested just like a normal WEB App

Third-party apps allowed in Android Automotive

The official documentation describes two kind of applications that can be implemented for Android Automotive, Media applications and Messaging applications. Also when creating a new project in Android Studio, the IDE prompts to select a template from those options.
My question is specific to third-party apps. Is Android Automotive limited to build one of these flavors? That is, interact with the user only through the native media UI of the vehicle or the messaging/notifications mechanism. Or as a third-party application developer I can build any other kind of applications (like generic phone/tablet android apps) with custom activities/screens? In case that any kind of applications are allowed, are they limited to run when the vehicle is parked?
Android Automotive is Android so you could build whatever android app you like and run it on Automotive. The catch is that Google is, as per now, only allowing Media/Messaging apps into Play Store and has quite specific design guidelines that developers need to follow.
When your app follows Googles Driver Distraction Guidelines then it can run when a vehicle is moving.

Is Android Automotives Car API only meant for OEMs?

The AOSP Automotive documentation states that third party apps should use the Car API("VehicleNetworkService. Controls vehicle HAL with built-in security. Access restricted to system components only (non-system components such as third party apps should use car API instead)",https://source.android.com/devices/automotive).
That is quite confusing because the android developer documentations state, that the only supported type of app is a media app which does not even draw its own UI except sign in and settings(https://developer.android.com/training/cars/media/automotive-os).
So is there a possibility to write other apps than media ones that may even use the car api to read the vehicle speed for example?
Car SDK is now released to developers and many Car APIs can be reached by third party apps, however privileged apps i.e. apps that are part of android system image and designed as privileged, can access more functionality that 3rd party apps. The access is gated by Android permissions.
See How to utilize Android Car API inside an app for my answer.
Of course you can develop any app running in Android Automotive Enviroment (i dont want to called it Android Automotive OS because it simply Android )
Google only given some advice/rules how to design your app in the way it good for Automotive product. Login, Car status check , Driver distraction limit...vv.
For 3rd developer sure you have to use Car API what car OEM offer and might require OEM's SDK also..
Goolge as of now only provide some kind of permisison that you can add to your app manifest. Then hopefully it can get correct information if OEM supported in thier IVI.
adb shell pm list permissions | grep car

Custom Android Emulators

I currently have an Android app on the Android Market. One of it's main purposes involves detecting incoming calls. Unfortunately, some phone models don't seem to be detecting this correctly. The version of Android isn't the problem (other phones with 2.1 and 2.2 work fine), so I'm wondering if the phones have something unique about them.
Because the main phone I've had problems with is the Epic 4g, I was hoping to get an emulator running simulating the phone. Is it possible to do this? I don't know anyone that personally has that model of phone, so this seems like my only option to debug the issue.
Thanks!
I've found this for Motorola Phones
which has helped me.
Generally, the emulator is based on QEMU, so it can be configured deeply. But thats not very useful as it is hard to get the actual hardware specs of any specific device as long it's developing company don't like to talk and share their secrets and flaws.
This said, it would be quite easy for an phone company insider to set up an exact emulator but very hacker style to set up for ourselves, needing days of investigation on the actual phone to check out its hardware details.