У меня есть приложение, в котором нет функций Android Auto/CarPlay; другими словами, это обычное приложение, не предназначенное для работы на Android Auto/CarPlay.
Я думал, что с помощью приведенного ниже кода смогу определить, когда пользователь подключается к Android Auto/CarPlay, но этого не произошло.
Есть ли способ узнать, подключен ли пользователь к Android Auto/CarPlay?
carModeReceiver = object : BroadcastReceiver() {
override fun onReceive(context: Context?, intent: Intent?) {
val action = intent?.action
if (action == Intent.ACTION_DOCK_EVENT) {
val dockState = intent.getIntExtra(Intent.EXTRA_DOCK_STATE, -1)
if (dockState == Intent.EXTRA_DOCK_STATE_CAR) {
updateStatus("Connected to Android Auto/CarPlay")
} else {
updateStatus("Not in car")
}
}
}
}
Вы можете использовать CarConnection API, чтобы определить, когда работает Android Auto. Начиная с Android 12, Android Auto больше не меняет режим пользовательского интерфейса телефона во время работы, поскольку для Android Auto не существует пользовательского интерфейса на экране телефона, поэтому метод, который вы пытаетесь использовать, не работает.
Отлично, все работало безупречно.