Google Asistan, navigasyon uygulamanızın destekleyebileceği üç farklı intent biçimi kullanır.
Bu sayfada ayrıntılı olarak açıklanan intent filtrelerini uygulamanızın manifest dosyasında tanımlayarak birlikte çalışabilirlik elde edebilir ve uygulamanızı Google Asistan ile entegre edebilirsiniz.
Amaçlar hakkında daha fazla bilgi edinmek için Intent
başlıklı makaleyi inceleyin.
Asistan navigasyon uygulaması Intent
sınıfı aşağıdaki intent'leri destekler:
- Gezinme amacı
- Arama amacı
- Özel işlem amacı
Şekil 1. Intent veri akışı.
Niyet verilerindeki parametreler
Intent verileri, ilettiğiniz intent'e dayalı parametreler içeren bir URI biçimini izler. Bazı parametreler her zaman verilerde sağlanır. Bu, her zaman açık bir değere sahip olmalarını bekleyebileceğiniz anlamına gelir. Ancak isteğe bağlı parametreler, verilerde her zaman bir değere sahip değildir. Daha fazla bilgi için Veri testi başlıklı makaleyi inceleyin.
Çevrimdışı intent'ler
Bu sayfada listelenen tüm intent'lerin çevrimdışı varyantları mevcuttur.
Bunları, şemasına .offline
ekleyerek ayırt edebilirsiniz.
Örneğin, gezinme amacı geo.offline
şemasını kullanır.
Manifest'teki bu intent filtreleri, uygulamanın bu işlemleri çevrimdışı olarak destekleme yeteneğini gösterir.
Gezinme amacı
Kullanıcının belirli bir hedefe gitme isteğini yerine getirmek için gezinme amacı kullanın. Bu hedef tek bir konum (adres) veya birden fazla konum (ör. kafeler ve benzin istasyonları) olabilir. Intent verileri, her intent için belirtilen bir URI biçimini izler.
Intent biçimi
Intent
sınıfı, navigasyon uygulaması amacı için aşağıdaki biçimi kullanır:
Kategori: android.intent.category.DEFAULT
İşlem:
- Android Auto ve Android Automotive OS:
androidx.car.app.action.NAVIGATE
- Diğer form faktörleri:
android.intent.action.NAVIGATE
Şema: geo
Örnekler:
geo:0,0?q=Googleplex
geo:0,0?q=1600+Amphitheatre+parkway&mode=b&intent=add_a_stop
geo:0,0?q=coffee+shop&mode=w&intent=navigation
geo:1.1,2.2?q=Starbucks+on+Main+Street&mode=w&intent=navigation
Önerilen uygulama davranışı: Belirtilen konuma gitme işlemi başlar veya kullanıcıdan birden fazla seçenek arasından seçim yapması istenir.
Manifest intent filtreleri
Google Asistan'ın, navigasyon uygulamanızın navigasyon intent'leri alabileceğini bilmesi için uygulamanızın manifest dosyasında aşağıdaki intent biçimini beyan edin.
Android Auto ve Android Automotive OS hariç tüm form faktörleri:
<intent-filter>
<action android:name="android.intent.action.NAVIGATE" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
Android Auto ve Android Automotive OS:
<intent-filter>
<action android:name="androidx.car.app.action.NAVIGATE" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
Sağlanan parametreler
Aşağıdaki parametrelerin, sağlanan gezinme uygulaması intent verilerinde mevcut olması beklenir.
Konum sorgusu veya coğrafi koordinatlar
Her gezinme amacı sorgusu, istenen veri türüne bağlı olarak aşağıdaki parametrelerden birini veya ikisini içerir:
Konum sorgusu
Kullanıcının gitmeye çalıştığı konumu ifade eder. Kullanıcının hedefini çözmek için bu verileri kullanın.
Parametre anahtarı:
q
Değer: Kullanıcının sorguladığı hedef.Örnek:
geo:0,0?q=Golden+Gate+Bridge
Açıklama: Kullanıcı Golden Gate Köprüsü'ne gitmek istiyor.Coğrafi koordinatlar (enlem ve boylam)
Kullanıcının gezinme için kullandığı belirli koordinatları ifade eder.
Parametre anahtarı:
geo:lat,long
Değer: Kullanıcının sorgulanan koordinatları.Örnek:
geo:1.1,2.2?mode=w&intent=navigation
Açıklama: Kullanıcı (1.1, 2.2) koordinatlarına gitmek istiyor.
İsteğe bağlı parametreler
Navigasyon uygulaması intent verilerinde sağlanan isteğe bağlı parametreler bu bölümde açıklanmıştır.
Amaç
Kullanıcı amacını tanımlar. Bu parametre ayarlanmazsa varsayılan kullanıcı amacı navigation
olarak kabul edilir.
Parametre anahtarı: intent
Olası değerler:
navigation
[varsayılan değer] - Hedefi değiştirir ve navigasyonu başlatır. x'e git gibi sorgular için bunu kullanın.add_a_stop
: Durak, önceki hedeflerle birlikte bir sonraki hedef olarak eklenir. x noktasına durak ekle gibi sorgular için bunu kullanın.directions
: Navigasyonu başlatmadan rota yol tariflerini gösterir. x'e giden yol tarifi gibi sorgular için bu özelliği kullanın.
Örnek: geo:47.61594547836694,-122.20373173098756?q=575+Bellevue+Square,+Bellevue,+WA+98004&intent=add_a_stop
Açıklama: Kullanıcı, Bellevue Square, Bellevue'a [47,6; -122,2] koordinatlarıyla bir durak eklemek istiyor.
Kullanılmasın
Gezinme sırasında kaçınılması gerekenleri tanımlar.
Parametre anahtarı: avoid
Olası değerler:
f
- feribotlarh
- otoyollart
- geçiş ücretleri
Örnek: geo:0,0?q=googleplex&avoid=tf
Açıklama: Kullanıcı, geçiş ücretlerinden ve feribotlardan kaçınarak Googleplex'e gitmek istiyor.
Ulaşım şekli
Seyahat şekli, kullanıcı tarafından sorguda belirtilen ulaşım şeklini temsil eder.
Parametre anahtarı: mode
Olası değerler:
b
- bisikletd
- sürüşx
- taksil
- iki tekerlekli araçr
- toplu taşımaw
- yürüyüş
Örnek: geo:0,0?q=Googleplex&mode=r
Açıklama: Kullanıcı, toplu taşımayı kullanarak Googleplex'e gitmek istiyor.
Giriş
Giriş kaynağını günlüğe kaydetmek için kullanılır.
Olası değerler: asistan
Örnek: geo:47.61594547836694,-122.20373173098756?entry=assistant
Arama amacı
Bir sorgu aramak ve sürüş sırasında rota üzerinde birden fazla sonuç görüntülemek için arama amacı kullanın.
Intent biçimi
Intent
sınıfı, arama amaçları için aşağıdaki biçimi kullanır:
Kategori: android.intent.category.DEFAULT
İşlem: android.intent.action.VIEW
Şema: geo
Örnek: geo:0,0?q=restaurants+nearby
Önerilen uygulama davranışı: Kullanıcı sorgusuna uyan konumların listesini açın.
ACTION_VIEW
Manifest intent filtreleri
Google Asistan'ın, navigasyon uygulamanızın arama intent'leri alabileceğini bilmesi için uygulamanızın manifest dosyasında aşağıdaki intent biçimini beyan edin:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
Sağlanan parametreler
Sağlanan arama amacı verilerinde aşağıdaki parametrelerin bulunması beklenir.
Konum sorgusu
Konum sorgusu, kullanıcının sürüş sırasında aradığı konumdur. Bu sorgu, tam olarak doğru olmayabilir veya etkin bir gezinme rotası boyunca olabilir.
Parametre anahtarı: q
Değer: Kullanıcının arama terimi. Bu terim, kahve dükkanı veya üniversite gibi bir yer türü olabilir ancak -yakınımda veya -en iyi puana sahip gibi nicelik belirteçleri de içerebilir.
Örnek: geo:0,0?q=restaurants+nearby
Açıklama: Kullanıcı, yakındaki restoranları aramak istiyor.
Özel işlem amacı
Kazaları bildirme ve navigasyonu sonlandırma gibi özel işlemler için özel intent kullanın. Ana işlem türü, act
sorgu parametresi tarafından tanımlanır.
İşlem türüne bağlı olarak ek parametreler ayarlayabilirsiniz.
Intent biçimi
Intent
sınıfı, özel işlem amacı için aşağıdaki biçimi kullanır:
Kategori: android.intent.category.DEFAULT
İşlem: android.intent.action.VIEW
Şema: geo.action
Örnek: geo.action:?act=report&accident_type=major
Manifest intent filtreleri
Google Asistan'a navigasyon uygulamanızın özel işlem intent'leri alabileceğini bildirmek için uygulamanızın manifest dosyasında aşağıdaki intent biçimini beyan edin.
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo.action" />
</intent-filter>
Sağlanan parametreler
Sağlanan özel işlem intent verilerinde aşağıdaki parametrelerin bulunması beklenir:
İşlem türü
Kullanıcının gerçekleştirmek istediği özel işlem türünü tanımlar.
Parametre anahtarı: act
Örnekler:
geo.action:?act=report_crash&accident_type=major
Açıklama: Kullanıcı büyük bir kazayı bildirmek istiyor.geo.action:?act=mute
Açıklama: Kullanıcı, sesli talimatları kapatmak istiyor.geo.action:?act=exit_navigation
Açıklama: Kullanıcı, mevcut gezinmeden çıkmak istiyor.
Önerilen uygulama davranışı: Navigasyon uygulamasında istenen işlemi yerine getirin veya desteklenmeyen işlem mesajı gösterin.
Aşağıdaki şekilde, yanıt sorgusundaki anahtar/değer çiftlerine örnek verilmiştir:
Şekil 2. Özel işlem amacı veri akışı.
Anahtar/değer çifti:
"act": "report_crash"
"road_direction": other_side"
Her özel işlemde anahtar olarak her zaman bir act
parametresi bulunur. Yukarıdaki örnek kodda bazı işlemler ek anahtar/değer çiftlerine sahip olabilir.
Örneğin, act=report_crash
şu ek anahtarları destekler: accident_type
ve road_direction
.
accident_type
anahtarı minor
ve major
olmak üzere iki değeri destekleyebilir.
Olası değerler
Tabloda, Google Asistan'ın kullanıcının navigasyon uygulamasında gerçekleştirmeye çalıştığı işlem olarak iletebileceği olası değerler listelenmektedir.
Değer | Açıklama | İsteğe bağlı parametre anahtarları | İsteğe bağlı parametre değerleri |
---|---|---|---|
allow_ferries
|
Rota tercihini, feribotlara izin verecek şekilde değiştirin. | ||
allow_highways
|
Rota tercihini, otoyollara izin verecek şekilde değiştirin. | ||
allow_tolls
|
Rota tercihini, otoyol geçiş ücretlerine izin verecek şekilde değiştirin. | ||
apply_electric_vehicle_connector_filter
|
Yalnızca aracın konnektörüyle eşleşen elektrikli araç şarj konumlarını gösterin. | ||
apply_electric_vehicle_fast_charging_filter
|
Yalnızca hızlı şarj cihazı olan elektrikli araç şarj noktalarını gösterin. | ||
apply_electric_vehicle_payment_filter
|
Yalnızca ödeme gerektiren elektrikli araç şarj noktalarını gösterin. | ||
avoid_ferries
|
Feribotlardan kaçınmak için rota tercihini değiştirin. | ||
avoid_highways
|
Otoyolları kullanmaktan kaçınmak için rota tercihini değiştirin. | ||
avoid_tolls
|
Ücretli geçişlerden kaçınmak için rota tercihini değiştirin. | ||
clear_search_results
|
Haritada arama sonuçlarını temizleyin. | ||
distance_to_destination
|
Hedefe olan mesafeyi gösterir. | ||
distance_to_next_turn
|
Bir sonraki dönemeç arasındaki mesafeyi gösterir. | ||
eta
|
Hedefe varış tahmini süresini gösterin. | ||
exit_navigation
|
Navigasyondan çıkın veya navigasyonu iptal edin. | ||
follow_mode
|
Harita görünümünü takip moduna değiştirin. | ||
go_back
|
Önceki harita işlemine geri dönme. | ||
hide_satellite
|
Uydu bilgilerini gizlemek için harita ayarını değiştirin. | ||
hide_traffic
|
Trafik bilgilerini gizlemek için harita ayarını değiştirin. | ||
mute
|
Sesli yardımı kapatın. | ||
query_current_road
|
Kullanıcının şu anda bulunduğu yolu gösterin. | ||
query_destination
|
Hedefin ne olduğunu gösterin. | ||
query_next_turn
|
Sonraki hamleyi gösterin. | ||
remove_electric_vehicle_connector_filter
|
Aracın konnektörüyle eşleşen elektrikli araç şarj konumları için filtrelemeyi kaldırın. | ||
remove_electric_vehicle_fast_charging_filter
|
Hızlı şarj istasyonu olan elektrikli araç şarjı konumları için filtrelemeyi kaldırın. | ||
remove_electric_vehicle_payment_filter
|
Ödeme gerektiren elektrikli araç şarj istasyonları için filtrelemeyi kaldırın. | ||
report_crash
|
Kilitlenmeleri bildirme | accident_type
|
minor
|
major
|
|||
road_direction
|
this_side
|
||
other_side
|
|||
report_hazard
|
Tehlikeleri bildirme | hazard_type
|
animal
|
broken_traffic_light
|
|||
construction
|
|||
flooding
|
|||
fog
|
|||
hail
|
|||
ice
|
|||
missing_sign
|
|||
object_on_road
|
|||
pothole
|
|||
roadkill
|
|||
snow
|
|||
vehicle
|
|||
weather
|
|||
road_direction
|
this_side
|
||
other_side
|
|||
location_on_road
|
on_road
|
||
on_shoulder
|
|||
report_police
|
Polis operasyonunu bildirme | road_direction
|
this_side
|
other_side
|
|||
report_road_closure
|
Kapalı yolları bildirme | road_closure_type
|
partial
|
full
|
|||
report_traffic
|
Trafik durumunu bildirme | traffic_type
|
moderate
|
heavy
|
|||
standstill
|
|||
road_direction
|
this_side
|
||
other_side
|
|||
resume_navigation
|
Navigasyonu devam ettirin. | ||
route_overview
|
Rotaya genel bakışı gösterin. | ||
show_alternates
|
Alternatif rotaları gösterin. | ||
show_directions_list
|
Adım adım yol tariflerini gösterin. | ||
show_satellite
|
Uydu bilgilerini haritada gösterin. | ||
show_traffic
|
Trafiği haritada gösterin. | ||
time_to_destination
|
Hedefe varış tahmini süresini gösterin. | ||
time_to_next_turn
|
Sonraki döneme kadar tahmini varış saatini göster. | ||
unmute
|
Sesli yardımın sesini açın. |