我有Android汽车的经验,我能够完美地接收PropertyIds,如手刹,转速和其他东西。
现在我只想用Android Auto做同样的事情,我知道这是可能的,因为Waze做得很完美,它检测手刹的状态,现在的问题是如何?
我的意思是我应该检查什么功能来正确运行PropertyManager和Car Library?
下面是一个在Automotive上工作但在Android Auto上不工作的代码示例:
car = Car.createCar(context);
字符串
在Android Auto上崩溃:
java.lang.NoClassDefFoundError: Failed resolution of: Landroid/car/Car;
at com.tib.androidautotest.CarPropertyHelper.startCan(CarPropertyHelper.java:37)
at com.tib.androidautotest.CarPropertyService.onCreate(CarPropertyService.java:39)
at android.app.ActivityThread.handleCreateService(ActivityThread.java:4379)
型
我认为这是正常的原因Android Auto没有汽车库(我猜),但我应该做什么访问PropertyIds?
1条答案
按热度按时间ozxc1zmp1#
是的,
android.car
库仅在Android Automotive OS上可用(请参阅Can't use Android Auto 'android.car' library - throws RuntimeException: Stub)。对于Android Auto,读取汽车硬件信息/状态的唯一方法是通过CarHardwareManager
的CarInfo
和CarSensors
类(https://developer. android. com/training/cars/apps #car-hardware)。因此,目前还没有一种方法可以在Android Auto上获得手刹状态或RPM信息(至少不需要用户具有配对的OBD II读取器并直接与之通信)。