Uygulama İşlemleri, kullanıcıların Google Asistan'la konuşmasına ve doğrudan "Ok Google, beni araç çağırın" gibi bir şey söylediklerinde, Örnek Uygulama" Ön plan uygulama çağrısı özelliğiyle, Kullanıcı uygulamanızı zaten açtığında deneyim
Ön plan uygulama çağrısı, yerleşik amaçların (BII'ler) sırasında belirli bir etkinlik varken uygulama adının belirtilmesini cihaz ön planı
Örneğin, araç paylaşımı uygulamanızı ön planda tutan bir kullanıcı şöyle diyor veya yazıyor: Google Asistan'a "Beni Mountain View'a götürmek istiyorum". Uygulamanız bunu kullanıyor giriş alanını Mountain View olarak ayarlayın. Ardından, kullanıcı "SFO'dan araç al" yazıyorsa uygulamanız teslim alma seçeneğini ayarlayabilir aynı zamanda uygulamanızın durumunu korur.
Sınırlamalar
Ön plan uygulama çağrısı yalnızca aşağıdaki BII'lerde kullanılabilir:
actions.intent.CREATE_MONEY_TRANSFER
actions.intent.CREATE_TAXI_RESERVATION
actions.intent.OPEN_APP_FEATURE
actions.intent.ORDER_MENU_ITEM
actions.intent.PAUSE_EXERCISE
actions.intent.RECORD_EXERCISE
actions.intent.RECORD_FOOD_OBSERVATION
actions.intent.RESUME_EXERCISE
actions.intent.START_EXERCISE
actions.intent.STOP_EXERCISE
Ön plan uygulama çağrısıyla ilgili yerel ayar desteği ve örnek sorgular almak için belirli bir BII için yerleşik amaç referansını inceleyin.
Ön plan uygulama çağrısı desteği
Ön plan uygulama çağrısı desteği eklemek, istek karşılamayı içerir temel alınan davranış şekilleridir. Bu etkinlik ön planda ve Uygulama İşlemi çağrılırsa Asistan, derin bağlantı amacını iletir. uygulamanızın durumunu güncelleyebilmesi için bu etkinliğe ek bir işaret koyun.
BII için ön plan uygulama çağrısını uygulamak üzere aşağıdakileri yapın:
shortcuts.xml
dosyanızda, BII'ye bir<intent>
etiketi ekleyin.<capability>
, ön plan uygulama çağrısını desteklemek istiyorsunuz.<intent>
etiketinin içine bir<extra>
etiketi ekleyin.<extra>
etiketindeandroid:key
öğesini"requiredForegroundActivity"
olarak ayarlayın. veandroid:value
ayarını zorunlu kılmak istediğiniz etkinliğe ayarlayın sahip olması gerekir. Etkinliği sınıf olmadan belirtme ve bir eğik çizgi (/) işaretinden sonra, kısaltmalar kullanarak, ardından etkinlik adı gelir:APP_PACKAGE_NAME/ACTIVITY_NAME
"requiredForegroundActivity"
için belirttiğiniz ön plan etkinliğinde, bir derin bağlantı amacını yönetmek içinonNewIntent()
yönteminiSINGLE_TOP
işareti ayarlandı. Asistan, derin bağlantı amacını belirtilen etkinlik ön plandayken bu işareti karşılama olarak gösterir.onNewIntent()
için yapılan aramaları, ön plan etkinliğinizin güncellemesi olarak kabul edin ve derin bağlantıdan ayıklanan parametreleri kullanarak bu etkinlikteki durumu yönetir.
Uygulamanız, tüm harici derin bağlantıların bir yönlendirici işlemi tetiklemesine izin vermek için bir yönlendirici etkinliği kullanıyorsa: tekli ağ geçidi yönlendirici etkinliği için bkz. Yönlendirici etkinliklerini yönetin.
Örnek
Örnek shortcuts.xml
dosyasından alınan aşağıdaki snippet,
requiredForegroundActivity
özelliği:
<capability name="actions.intent.CREATE_TAXI_RESERVATION"> <!-- Trigger with foreground app invocation if MainActivity is in the foreground. --> <intent android:targetClass="com.example.app.MainActivity" android:targetPackage="com.example.app"> <parameter android:name="taxiReservation.dropoffLocation.name" android:key="dropoff" /> <extra android:key="requiredForegroundActivity" android:value="com.example.app/com.example.app.MainActivity" /> </intent> <!-- This won't trigger if MainActivity is in the foreground. --> <intent android:targetClass="com.example.app.MainActivity" android:targetPackage="com.example.app"> <parameter android:name="taxiReservation.dropoffLocation.name" android:key="dropoff" /> </intent> </capability>
Kullanıcı izinleri
![Kullanıcıların, cihaz ayarlarında "Ekrandaki metni kullan" seçeneğini etkinleştirmesi gerekir
çalışması gerekir.](https://developer.android.com/static/guide/app-actions/images/device-setting-assist-screen.png?authuser=19&hl=tr)
Ön plan uygulama çağrısının bir kullanıcı için çalışması için kullanıcının Ekrandaki metni kullan cihaz ayarı etkin. Konum ve tam ad Bu ayar, OEM veya cihaz üreticisine göre değişiklik gösterebilir. Örneğin, Bunun yerine, cihaz ayarının adı kullanıcının kendi cihazında Ekran bağlamını kullan olanak tanır.
Bir Pixel telefonda bu Android ayarına erişmek için önce Ayarlar > Uygulamalar ve bildirimler > Varsayılan uygulamalar > Asistan uygulaması. Ardından, Asistan ve Sesli giriş ekranında Ekrandaki metni kullan seçeneğini etkinleştirin.
Çağrınızı test edin
Ön plan uygulama çağrınızı denemek için şu adımları uygulayın:
- Şu izinleri etkinleştirmek için Kullanıcı izinleri bölümündeki talimatları uygulayın: Cihaz ayarında ekrandaki metni kullan.
- Gerekli ön plan etkinliği olarak belirttiğiniz etkinliği açmak için uygulamanızı açın.
- & tuşlarına basın Asistan'ı mevcut ekranda yer paylaşımı olarak açmak için ana sayfa düğmesini basılı tutun uygulamasını indirin. Uyguladığınız BII'ye karşılık gelen bir sorgu girin. uygulama adını verebilirsiniz. İşlem başarılı olduğunda uygulamanız güncellenir sorgunuza bağlı olarak kendisini ayarlar ve yeniden başlatmadan etkinliği tıklayın.
Yönlendirici etkinliklerini işleme
Bazı uygulamalar, tüm harici derin bağlantıları tek bir ağ geçidi yönlendirici kullanarak işler. etkinliği'ne dokunun. Yönlendirici etkinliği, uygun iş mantığını başlatır. işlem (tüm kontrollerden ve doğrulamalardan sonra) ve iş mantığını döndürür. bu etkinliği ön plana alabiliyorsunuz.
Derin bağlantının tetiklenmesi, yönlendirici etkinliğinin bu görev yığınını görebilirsiniz. Yönlendirici kullanan uygulamalar için yönlendirici etkinliğinin gönderilen niyeti gerçekleştirdiğinden emin olmalısınız. Google Asistan tarafından mevcut ön plan etkinliği örneğine Hedefleriniz bu gereksinim, yönlendirici etkinliğinizin başladığı yere bağlı olarak değişir.
Yönlendiriciniz iş mantığı etkinliğinizle aynı görev yığınında başlıyorsa
amacı SINGLE_TOP
, CLEAR_TOP
, bit tabanlı VEYA
ve NEW_TASK
:
Kotlin
Intent.FLAG_ACTIVITY_SINGLE_TOP or Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_NEW_TASK
Java
Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK
Yönlendiriciniz iş mantığınızdan ayrı bir görev yığınında başlıyorsa
etkinliği, SINGLE_TOP
işaretini kullanarak işletmeye yönlendirin
mantıksal etkinliği vardır.