لتحديد ما إذا كان تطبيقك يعمل على Android Auto أو Android Automotive OS، استخدِم واجهة برمجة التطبيقات CarConnection لاسترداد معلومات الاتصال في وقت التشغيل.
مثلاً:
في
Sessionلتطبيق سيارتك، ابدأCarConnectionواشترِك في تحديثاتLiveData:Kotlin
CarConnection(carContext).type.observe(this, ::onConnectionStateUpdated)Java
new CarConnection(getCarContext()).getType().observe(this, this::onConnectionStateUpdated);في المراقب، تفاعَل مع التغييرات في حالة الاتصال:
Kotlin
fun onConnectionStateUpdated(connectionState: Int) { val message = when(connectionState) { CarConnection.CONNECTION_TYPE_NOT_CONNECTED -> "Not connected to a head unit" CarConnection.CONNECTION_TYPE_NATIVE -> "Connected to Android Automotive OS" CarConnection.CONNECTION_TYPE_PROJECTION -> "Connected to Android Auto" else -> "Unknown car connection type" } CarToast.makeText(carContext, message, CarToast.LENGTH_SHORT).show() }Java
private void onConnectionStateUpdated(int connectionState) { String message; switch(connectionState) { case CarConnection.CONNECTION_TYPE_NOT_CONNECTED: message = "Not connected to a head unit"; break; case CarConnection.CONNECTION_TYPE_NATIVE: message = "Connected to Android Automotive OS"; break; case CarConnection.CONNECTION_TYPE_PROJECTION: message = "Connected to Android Auto"; break; default: message = "Unknown car connection type"; break; } CarToast.makeText(getCarContext(), message, CarToast.LENGTH_SHORT).show(); }