Sesli kontrol, sürücülerin ellerini kullanmadan görevleri tamamlamalarına olanak tanır dikkatlerini yoldan ayırmasına neden olabilir. Araba uygulamaları için Uygulama İşlemleri sayesinde sürücüler Google Asistan'ı kullanarak bilgi-eğlence sistemindeki Android uygulamalarını kontrol ederek "Ok Google, ExampleApp'te cadde üzerinde park yeri bul" gibi bir şey söylediğinizde.
Uygulama İşlemleri, önemli yer (ÖY) araba uygulamalarıyla çalışır. Bu kılavuzda ele alınan konular: Uygulama İşlemleri'ni ÖY'nize entegre etmeye yönelik belirli koşullar ve sınırlamalar uygulamasını indirin.
İşleyiş şekli
Uygulama İşlemleri, uygulama içi işlevlerinizi Asistan'a genişleterek kullanıcıların şunları yapmasına olanak tanır:
seslerini kullanarak uygulama özelliklerine erişebilir. Kullanıcı bir Uygulama İşlemini çağırdığında
Asistan, sorguyu uygulamanızın
shortcuts.xml kaynak ve istenen ekranda uygulamanızı başlatır.
Android capability öğelerini kullanarak uygulamanızda BBI'leri desteklediğini beyan etmeniz gerekir.
Uygulamanızı Google Play Console'u kullanarak yüklediğinizde Google,
uygulamanızda beyan edilen ve kullanıcıların bunlara erişebilmesini sağlayan özellikler
Google Asistan'dan.
- Kullanıcı Asistan'ı tetikler ve belirli bir uygulama için sesli istekte bulunur.
- Asistan, isteği önceden eğitilmiş bir modelle (BII) eşleştirir ve BII tarafından desteklenen parametreler.
- Bu örnekte Asistan, sorguyu
GET_CHARGING_STATIONile eşleştirir. BII, "SFO" konum parametresini çıkarır ve konumu coğrafi koordinatlarını öğrenebilirsiniz. - Uygulama, bu BII'deki yerine getirme tanımı aracılığıyla tetiklenir.
- Uygulama, sipariş karşılama işlemini gerçekleştirir ve şurada şarj istasyonu seçeneklerini gösterir: sürücünün bilgi-eğlence sistemi.
Sınırlamalar
Uygulama İşlemleri'nin araba uygulamaları için aşağıdaki sınırlamalar geçerlidir:
Araba Uygulaması İşlemleri, Android derin bağlantıları kullanılarak yerine getirilmelidir. Daha fazla bilgi için daha fazla bilgi edinmek için Yerleşik amaçlar için karşılama ayrıntıları sağlayın.
Araba uygulamaları yalnızca aşağıdaki BII'leri destekler:
- Otopark -
GET_PARKING_FACILITY - Şarj oluyor -
GET_CHARGING_STATION
- Otopark -
Gereksinimler
Araba uygulamanızı Uygulama İşlemleri'ne hazırlamak için aşağıdaki adımları uygulayın:
- Uygulama İşlemleri ile ilgili genel Android uygulama gereksinimlerini karşılayın.
- Araba Uygulaması Kitaplığı bağımlılığını ekleyin. Ayrıntılar için bkz. Bağımlılıkları bildirme.
Niyetinizi ve hedeflerinizi belirleyin
Uygulama İşlemleri ile bir araba uygulamasını sesli olarak etkinleştirmenin ilk adımı, Uygulamanızın hangi kullanıcı sesli komutlarını veya amaçlarını desteklediğini gösterir. Daha sonra uygulamanızın isteği nasıl karşılayacağını belirtmek için her bir amacın yerine getirilmesini sağlar.
Araba uygulamanız hangi amaçları destekliyor?
Uygulama İşlemleri, yerleşik intentler (BII) adı verilen önceden eğitilmiş ses modelleri sunar. Kullanıcı şunu dediğinde sesli komutlarını anlayabilir ve yorumlayabilir: "Ok Google". Sesli isteklere yanıt vermek için Asistan'a beyan etmeniz yeterlidir uygulamanızın desteklediği BBI'leri gösterir. Örneğin, uygulamanızın bir park yeri bulma konusunda,
GET_PARKING_FACILITYBBI. Alternatif olarak, kullanıcıların elektrikli elektrik tesisatı bulmasına yardımcı olmak içinGET_CHARGING_STATIONBII'yi uygulayabilirsiniz. araç şarj istasyonları.Uygulamanız her bir amacı nasıl yerine getirmeli?
Uygulamanız, kendisini uygun tıklayın. Uygulama İşlemleri, karşılamanız için Böylece, yanıtınızı kullanıcının ihtiyaçlarına göre özelleştirebilirsiniz.
Uygulama İşlemleri'ni entegre etme
Sipariş karşılama stratejinizi belirledikten sonra, sesli etkinleştirme için aşağıdaki adımları uygulayın araba uygulamanız:
AndroidManifest.xmlana etkinliğinizi açıp Android için destek beyan edin kısayollar. Asistan'a bildirmek içincapabilitykısayol öğelerini kullanıyorsunuz uygulamanızın desteklediği BBI'leri gösterir. Daha fazla bilgi için bkz. Özellikler ekleyin.<!-- AndroidManifest.xml --> <meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" />Daha sonra,
AndroidManifest.xmliçine bir<intent-filter>öğesi ekleyin. Bu Asistan'ın, uygulamanızın içeriğine bağlanmak için derin bağlantılar kullanabilmesini sağlar.Android Auto sipariş karşılama için
<intent-filter>değeri mobil uygulama.Android Automotive OS için uygulamanızın
CarAppServiceoturumu tetikleyicileri Asistan Bir oturumun derin bağlantınızı tetiklemesine izin vermek içinAndroidManifest.xmlöğesinin<activity>öğesinde<intent-filter>.
<!-- AndroidManifest.xml --> <activity ... android:name="androidx.car.app.activity.CarAppActivity"> ... <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="YOUR_SCHEME" android:host="YOUR_HOST" /> </intent-filter> </activity>Henüz bir
shortcuts.xmldosyanız yoksa uygulamanızınres/xmlyeni bir dizin oluşturun. Uygulama İşlemleri'nin Android kısayolları için Kısayollar.xml oluşturma bölümüne bakın.shortcuts.xmliçinde, seçtiğiniz BII için bircapabilityuygulayın. Sonra, Uygulama istek karşılamayı tanımlamak için iç içe yerleştirilmiş bir<intent>ekleyin.<!-- shortcuts.xml --> <?xml version="1.0" encoding="utf-8"?> <shortcuts xmlns:android="http://schemas.android.com/apk/res/android"> <capability android:name="actions.intent.GET_PARKING_FACILITY"> <intent> <url-template android:value="YOUR_SCHEME://YOUR_HOST{?name,address,disambiguatingDescription,latitude,longitude}"> <!-- Facility name, e.g. "Googleplex" --> <parameter android:name="parkingFacility.name" android:key="name"/> <!-- Address, e.g. "1600 Amphitheatre Pkwy, Mountain View, CA 94043" --> <parameter android:name="parkingFacility.address" android:key="address"/> <!-- Disambiguate the type of service, e.g. "valet" --> <parameter android:name="parkingFacility.disambiguatingDescription" android:key="disambiguatingDescription"/> <!-- Latitude, e.g. "37.3861" --> <parameter android:name="parkingFacility.geo.latitude" android:key="latitude"/> <!-- Longitude, e.g. "-122.084" --> <parameter android:name="parkingFacility.geo.longitude" android:key="longitude"/> </intent> </capability> </shortcuts>Son olarak, gelen uygulamayı işleyebilmek için araba uygulamanızın
Session()mantığını güncelleyin İşlemlerin karşılanması. Aşağıdaki örnekler,Session.onCreateScreen()veSession.onNewIntent().onCreateScreen()
Kotlin
@Override fun onCreateScreen(@NonNull intent: Intent): Screen { if (intent.getData() != null) { val uri: Uri = intent.getData() // uri = "YOUR_SCHEME://YOUR_HOST?name=Levis%20center" // Build your Templates with parsed uri parameters ... } }
Java
@Override public Screen onCreateScreen(@NonNull Intent intent) { if (intent.getData() != null) { Uri uri = intent.getData(); // uri = "YOUR_SCHEME://YOUR_HOST?name=Levis%20center" // Build your Templates with parsed uri parameters ... } }
onNewIntent()
Kotlin
@Override fun onNewIntent(@NonNull intent: Intent): Screen { if (intent.getData() != null) { val uri: Uri = intent.getData() // uri = "YOUR_SCHEME://YOUR_HOST?name=Levis%20center" // Build your Templates with parsed uri parameters ... } }
Java
@Override public void onNewIntent(@NonNull Intent intent) { if (intent.getData() != null) { Uri uri = intent.getData(); // uri = "YOUR_SCHEME://YOUR_HOST?name=Levis%20center" // Build your Templates with parsed uri parameters ... } }
Uygulamanızı önizleme, test etme ve yayınlama
Uygulama İşlemleri, uygulamanızı önizlemek ve test etmek için araçlar sağlar. Şurayı ziyaret edin: Uygulama İşlemlerine genel bakış, bu araç hakkında bilgi ve sesle etkinleştirilen araç uygulamanızı Play Store'da nasıl yayınlayacağınızı öğrenin.