除此之外,在驾驶环境中,对于语音功能的实现也更有利。因为,驾驶舱的空间较小,便于语音数据的捕获;驾驶舱座位的相对位置固定,系统更方便判断发出语音的角色,例如区分发出语音指令的是驾驶员还是乘客而采取不同的处理。 这就不奇怪Google将Google Assistant集成到Android Auto中了。 当语音系统能够获取到用户的基本信息的情况下,很多操作会变得非常便利。例如,直接告诉系统:”我要回家“。而不用先打开地图,然后搜索自己家的地址,然后再点击导航按钮: 当系统有了更多的用户的数据以及外部服务之后,可以做的事情将超远我们现在看到的。例如:在导航至某个餐馆的途中直接帮忙预订座位(今年的Google I/O上,Google已经展示了通过AI完成的电话预订:Google’s AI Assistant Can Now Make Real Phone Calls)。 当然,Google Assistant 不仅仅是为Android Auto设计的,它支持非常多的设备。不过这部分内容已经超过本文所要说明的。
1.2 兼容的车型和应用
现代汽车是首个支持Android Auto的汽车制造商。2015的Hyundai Sonata是第一个支持Android Auto的汽车型号。 到目前为止(2018年7月),支持Android Auto的汽车品牌已经很多,包括:奥迪,别克,凯迪拉克,雪佛兰,福特,本田,吉普,林肯,奔驰,马自达,大众,Volvo等超过50家汽车制造商,超过500种汽车型号。 详细的品牌和型号请参见下面这个链接:Android Auto - The right information for the road ahead 。 目前,支持Android Auto的应用比较少。虽然2018年的Google I/O上宣称这类应用数量正在高速增长,但目前Google Play上支持Android Auto的应用也只有数千款,这与Google Play上的三百多万应用相比,就显得很可怜了。 可以通过这个链接浏览支持Android Auto的应用:Apps for Android Auto。
public static final int VEHICLE_PROPERTY_INFO_VIN = 0x00000100; public static final int VEHICLE_PROPERTY_INFO_MAKE = 0x00000101; public static final int VEHICLE_PROPERTY_INFO_MODEL = 0x00000102; public static final int VEHICLE_PROPERTY_INFO_MODEL_YEAR = 0x00000103; public static final int VEHICLE_PROPERTY_INFO_FUEL_CAPACITY = 0x00000104; public static final int VEHICLE_PROPERTY_PERF_ODOMETER = 0x00000204; public static final int VEHICLE_PROPERTY_PERF_VEHICLE_SPEED = 0x00000207; public static final int VEHICLE_PROPERTY_ENGINE_COOLANT_TEMP = 0x00000301; public static final int VEHICLE_PROPERTY_ENGINE_OIL_TEMP = 0x00000304; public static final int VEHICLE_PROPERTY_ENGINE_RPM = 0x00000305; public static final int VEHICLE_PROPERTY_GEAR_SELECTION = 0x00000400; public static final int VEHICLE_PROPERTY_CURRENT_GEAR = 0x00000401; public static final int VEHICLE_PROPERTY_PARKING_BRAKE_ON = 0x00000402; public static final int VEHICLE_PROPERTY_DRIVING_STATUS = 0x00000404; public static final int VEHICLE_PROPERTY_FUEL_LEVEL_LOW = 0x00000405; public static final int VEHICLE_PROPERTY_NIGHT_MODE = 0x00000407; public static final int VEHICLE_PROPERTY_HVAC_FAN_SPEED = 0x00000500; public static final int VEHICLE_PROPERTY_HVAC_FAN_DIRECTION = 0x00000501; public static final int VEHICLE_PROPERTY_HVAC_TEMPERATURE_CURRENT = 0x00000502; public static final int VEHICLE_PROPERTY_HVAC_TEMPERATURE_SET = 0x00000503; public static final int VEHICLE_PROPERTY_HVAC_DEFROSTER = 0x00000504; public static final int VEHICLE_PROPERTY_HVAC_AC_ON = 0x00000505; public static final int VEHICLE_PROPERTY_HVAC_MAX_AC_ON = 0x00000506; public static final int VEHICLE_PROPERTY_HVAC_MAX_DEFROST_ON = 0x00000507; public static final int VEHICLE_PROPERTY_HVAC_RECIRC_ON = 0x00000508; public static final int VEHICLE_PROPERTY_HVAC_DUAL_ON = 0x00000509; public static final int VEHICLE_PROPERTY_ENV_OUTSIDE_TEMPERATURE = 0x00000703; public static final int VEHICLE_PROPERTY_ENV_CABIN_TEMPERATURE = 0x00000704; public static final int VEHICLE_PROPERTY_RADIO_PRESET = 0x0000801; public static final int VEHICLE_PROPERTY_AUDIO_FOCUS = 0x00000900; public static final int VEHICLE_PROPERTY_AUDIO_VOLUME = 0x00000901; public static final int VEHICLE_PROPERTY_AUDIO_VOLUME_LIMIT = 0x00000902; public static final int VEHICLE_PROPERTY_AUDIO_ROUTING_POLICY = 0x00000903; public static final int VEHICLE_PROPERTY_AUDIO_HW_VARIANT = 0x00000904; public static final int VEHICLE_PROPERTY_AP_POWER_STATE = 0x00000A00; public static final int VEHICLE_PROPERTY_DISPLAY_BRIGHTNESS = 0x00000A01; public static final int VEHICLE_PROPERTY_AP_POWER_BOOTUP_REASON = 0x00000A02; public static final int VEHICLE_PROPERTY_HW_KEY_INPUT = 0x00000A10; public static final int VEHICLE_PROPERTY_INSTRUMENT_CLUSTER_INFO = 0x00000A20; public static final int VEHICLE_PROPERTY_CUSTOM_START = 0x70000000; public static final int VEHICLE_PROPERTY_CUSTOM_END = 0x73ffffff; public static final int VEHICLE_PROPERTY_INTERNAL_START = 0x74000000; public static final int VEHICLE_PROPERTY_INTERNAL_END = 0x74ffffff; public static final int VEHICLE_PROPERTY_INTERNAL_AUDIO_STREAM_STATE = 0x74000000;