Uygulama İşlemleri Oluşturma

Uygulama İşlemleri, kullanıcıların Google Asistan'a sorarak veya Asistan'ın önerdiği Android kısayollarını kullanarak Android uygulamanızın işlevselliğini başlatmasına olanak tanır. Uygulama İşlemleri ile Android uygulamanızın kapsamını genişletmenin başlıca adımları şunlardır:

  1. Tetiklenecek uygulama içi işlevi ve bununla eşleşen yerleşik niyeti (BII) tanımlayın.
  2. BII için sipariş karşılama ayrıntılarını sağlayın.
  3. Uygulama İşleminizin kısayollarını Asistan'a aktarın.
  4. Uygulama İşlemlerinizi bir test cihazında önizleyin.
  5. Uygulamanızın test sürümünü oluşturun.
  6. Uygulama İşlemleri incelemesi ve dağıtımı isteğinde bulunun.

İsterseniz kullanıcılarınıza önerebilmesi için Asistan'a sunulacak dinamik kısayollar tanımlayabilirsiniz. Uygulama İşlemleri codelab'ini takip ederek örnek bir uygulama kullanarak Uygulama İşlemi oluşturun.

Şartlar

Uygulama İşlemleri geliştirmeye başlamadan önce hem sizin hem de uygulamanızın aşağıdaki gereksinimleri karşıladığınızdan emin olun:

  • Google Play Console'a erişimi olan bir Google Hesabınız olmalıdır.
  • Uygulama İşlemleri yalnızca Google Play Store'da yayınlanan uygulamalar için kullanılabilir olduğundan uygulamanız Google Play Store'da yayınlanmalıdır. Ayrıca, uygulama işlemleri Managed Google Play tarafından desteklenmediğinden uygulamanızın bir iş profilinde kullanılmak üzere tasarlanmadığından emin olun.
  • Uygulama İşlemlerinizi test etmek için fiziksel veya sanal bir cihazınız olmalıdır.
  • Android Studio'nun en son sürümüne sahip olmanız gerekir.
  • Android Studio'da, test cihazınızdaki Google uygulamasında ve Google Play Console'da oturum açmak için aynı Google Hesabı'nı kullanmanız gerekir.
  • Asistan'ı test cihazınızda kurup Ana Sayfa düğmesine dokunup basılı tutarak test etmeniz gerekir.

Yerleşik amaçları uygulama işlevselliğiyle eşleştirin

Android uygulamanızda kullanıcıların sesli istekle atlamak isteyebilecekleri işlevleri belirleyin ve kullanım alanlarınıza uygun BBI'leri bulmak için yerleşik amaç referansını inceleyin. Gerçekleştirmek istedikleri görevler için kullanıcı sorgularının modellenmesine yardımcı olmak üzere BII'ler, uygulamanızdaki temel işlevlere ve kullanıcı akışlarına uyan BII'ler bulmaya çalışın.

Uygulama içi aramanızı actions.intent.GET_THING BII ile Asistan'ı kapsayacak şekilde genişletmek veya actions.intent.OPEN_APP_FEATURE BII'yi uygulayarak kullanıcıların belirli uygulama özelliklerini sesleriyle başlatmasına izin vermek gibi hemen hemen tüm Android uygulamalarının kullanabileceği yaygın BI'ler vardır.

Ayrıca, dikey veya kategoriye özel kullanım alanlarına olanak tanıyan iş zekaları (BII'lar) da vardır. Örneğin, bir yemek siparişi uygulaması actions.intent.ORDER_MENU_ITEM BII'yi kullanabilir.

Mükemmel bir kullanıcı deneyimi sağlamak ve olası onay gecikmelerini önlemek için, uyguladığınız her BII'nin uygulama içi işlevinizle alakalı olduğundan emin olun.

Uygulama İşlemleri, kullanıcıları doğrudan uygulamanızdaki belirli içeriğe götürmek üzere Asistan uygulamasından Android intent'leri başlatarak çalışır. Bir etkinliği açıkça başlatma amaçlarını targetClass ve targetPackage alanlarını belirterek tanımlayabilirsiniz. Uygulamanızda Android derin bağlantı URL'leri zaten uygulanıyorsa niyeti, istek karşılama için bir derin bağlantı kullanacak şekilde yapılandırabilirsiniz. Daha fazla bilgi için Etkinliğinizi derin bağlantıları test etme bölümüne bakın.

Yerleşik amaçlar için istek karşılama ayrıntıları sağlayın

Bir Uygulama İşlemi oluşturmanın çoğunda, seçtiğiniz BII'yi ve ilgili istek karşılamayı belirttiğiniz Android uygulamanızın shortcuts.xml kaynak dosyasında bir özellik beyan edilir. BII, bir görev için kullanıcı sorgusunu modeller. İstek karşılama amacı, Asistan'a görevin nasıl gerçekleştirileceğiyle ilgili bilgi sağlar.

shortcuts.xml dosyanızda, BII'ler <capability> öğeleri olarak temsil edilir ve her istek karşılama <intent> öğesiyle temsil edilir:

<shortcuts>
    <capability android:name="actions.intent.ORDER_MENU_ITEM">
        <intent
            android:action="android.intent.action.VIEW"
            android:targetPackage="com.example.app"
            android:targetClass="com.example.app.browse">
            <parameter
                android:name="menuItem.name"
                android:key="query">
            </parameter>
        </intent>
    </capability>

Çoğu BBI'da amaç parametrelerini kullanıcı sorgusundan schema.org varlıklarına dayanarak çıkarırsınız. Uygulamanız daha sonra bu BII parametrelerini kullanarak kullanıcıları seçilen özelliğe yönlendirir. Örneğin, baştaki kod menuItem.name BII parametresini query Android intent parametresiyle eşler.

İşlemleri derin bağlantılar kullanarak gerçekleştiriyorsanız Asistan'ın oluşturduğu derin bağlantı URL'sini tanımlamak için urlTemplate alanını kullanırsınız:

<shortcuts>
    <capability android:name="actions.intent.ORDER_MENU_ITEM">
        <intent android:action="android.intent.action.VIEW">
            <url-template android:value="myfoodapp://browse{?query}" />
            <parameter android:name="menuItem.name"
                android:key="query"
                android:mimeType="text/*">
            </parameter>
        </intent>
    </capability>
</shortcuts>

shortcuts.xml dosyasına Uygulama İşlemleri ekleme hakkında önemli ayrıntılar için shortcuts.xml oluşturma konusuna bakın. Bu sayfada, uygulamanızın beklediği parametre değerlerinin nasıl belirtileceği de açıklanmaktadır.

GET_THING yerleşik amacını uygulayın

Uygulamanızda arama işlevi varsa bu işlev için actions.intent.GET_THING BII'yi uygulamanız gerekir. Böylece Asistan, "Ok Google, Örnek Uygulamada Örnek Şey ara" gibi sorgular yürüten kullanıcıları uygulama içi sonuçlar için uygulamanızın arama işlevine yönlendirebilir.

shortcuts.xml dosyanızda, diğer BII'leri uygularken actions.intent.GET_THING BII için bir <capability> uygulayın. Kullanıcı sorgusunu uygulamanızın arama işlevine ileten en az bir istek karşılama sağladığınız sürece GET_THING için birden fazla istek karşılama kullanabilirsiniz.

shortcuts.xml içine actions.intent.GET_THING BII'yi eklemeyle ilgili bir örneği aşağıda bulabilirsiniz:

  <capability android:name="actions.intent.GET_THING">
    <intent
      android:targetPackage="com.example.myapp"
      android:targetClass="com.example.myapp.MySearchActivity">
      <parameter android:name="thing.name" android:key="query" />
    </intent>
  </capability>

Activity aramanızda, arama sorgusunu intent öğesindeki ekstra verilerden çıkarıp uygulamanızın arama işlevine iletin. Önceki kodda, query anahtarı olarak iletilen arama sorgusu, "thing.name" BII parametresiyle eşlenir. Ardından sorguyla bir arama yapın ve sonuçları kullanıcı arayüzünde görüntüleyin.

İsteğe bağlı: Uygulama İşleminizin kısayollarını Asistan'a aktarın

İşleminiz için bir özellik tanımladığınızda, kullanıcılar "Ok Google, Örnek Uygulama'da pizza sipariş et" gibi bir komut vererek eyleminizi başlatabilirler. Asistan, alakalı zamanlarda kullanıcılara işlemleriniz için Android kısayolları önererek bunları keşfetmelerini ve tekrar oynatmalarını sağlayabilir. Asistan hem dinamik hem de statik kısayollar önerebilir.

Dinamik kısayolları Asistan'a aktarmak için Google Kısayollar Entegrasyonu kitaplığını kullanın. Bu Jetpack kitaplığı, Asistan'ın kısayollarınızı alıp kullanıcılara uygun zamanda önermesine olanak sağlar.

Daha ayrıntılı bilgi için Dinamik kısayolları Asistan'a aktarma başlıklı makaleye bakın.

Uygulama İşlemlerinizi önizleyin

Geliştirme ve test sırasında, Uygulama İşlemleri'nin uygulamanızda çalışıp çalışmadığını test etmek üzere Android Studio için Google Asistan eklentisini kullanın. Eklenti, Google Hesabınız için Asistan'da Uygulama İşlemlerinizin bir önizlemesini oluşturur. Test aracını kullanarak, kullanıcılardan almayı beklediğiniz giriş parametrelerine sahip BBI'ler sağlayarak bir fiziksel test cihazında veya emülatörde isteklerinizi test edebilirsiniz.

Uygulama İşlemlerinizi önizlerken cihazda sesle sorguları tetikleyebilirsiniz. Bu işlev yalnızca Uygulama İşlemleri için BII referansında listelenen sorgularda kullanılabilir. Ses tetiklemeyi düzenli testler için değil, yalnızca gösterim için kullanın.

Uygulamayı incelemeye göndermeden önce Google Play Console için geliştirici araçlarını kullanarak uygulamanızı taslak modunda test edin. Uygulamanızın taslağını dağıtmak amacıyla Google Play Console'u kullanma hakkında daha fazla bilgi için Sürüm hazırlama ve kullanıma sunma bölümüne bakın.

Test sürümü oluşturma

Uygulama İşlemlerinizi başka test kullanıcılarıyla test etmeye hazır olduğunuzda, uygulamanızın dahili veya kapalı bir test sürümünü oluşturun. Varsayılan olarak, dahili ve kapalı sürüm test kullanıcılarınız incelenmiş ve onaylanmış Uygulama İşlemlerine erişebilirler.

Onaylanmamış işlemler de dahil olmak üzere tüm Uygulama İşlemleri'ne test erişimi vermek için test kullanıcılarınızı, Uygulama İşlemleri Geliştirme Programı Google Grubu'na katılmaları konusunda bilgilendirin. Bu grubun üyeleri, uygulama işlemleri test aracını kullanarak önizleme oluşturmak zorunda kalmadan, kapalı ve dahili test sürümlerindeki tüm Uygulama İşlemlerine erişebilir. Gruba katıldıktan sonra erişimin kullanılabilir hale gelmesi üç saati bulabilir.

Uygulama İşlemleri incelemesi ve dağıtımı isteğinde bulunma

Uygulama İşlemleri, incelenip onaylanana kadar yayınlanmış uygulamalarınızın veya açık test sürümlerinizin kullanıcıları tarafından kullanılamaz. Uygulama İşlemleri incelemesi, Google Play'deki Android uygulama inceleme ve dağıtım durumunuzu etkilemez. Gönderdiğiniz uygulama onaylanmış ve Play Store'da yayınlansa bile shortcuts.xml Google tarafından inceleniyor olabilir. Bu inceleme de onaylanana kadar Uygulama İşlemleri son kullanıcılarınız için çalışmaz.

Uygulamanızı dağıttığınızda Uygulama İşlemleri etkin kalır. Ancak, yeniden dağıtılan sürümler Google tarafından incelemeye tabidir. Yeni sürüm düzgün çalışmıyorsa veya politika ihlalleri içeriyorsa Google, uygulamanız için Uygulama İşlemleri'ni devre dışı bırakma hakkını saklı tutar.

Uygulama İşlemlerinizi incelemeye göndermek için aşağıdakileri yapın:

  1. Google Play Console'da Uygulama İşlemleri hizmet şartlarını kabul edin (Gelişmiş ayarlar > Uygulama İşlemleri):

    Google Play Console&#39;daki Uygulama İşlemleri Hizmet Şartları.

  2. shortcuts.xml içeren uygulamanızı, yayınlamak için her zamanki gibi Google Play Console'a yükleyin.

  3. Uygulamanızı Play Console'a yükledikten sonra Google, Uygulama İşlemleri incelemenizin durumu hakkında daha fazla bilgi vermek için Play Console hesabınızdaki e-posta üzerinden sizinle iletişim kurar. Uygulama İşlemleri inceleme durumunuzla ilgili sorularınız için Asistan Geliştirici Destek Ekibi ile de iletişime geçebilirsiniz. İletişim formunda, uygulama paketi kimliğinizi sağlayın ve Size nasıl yardımcı olabiliriz? seçim kutusunda Uygulama İşlemi incelemesi'ni seçin.

Uygulama İşlemi kullanarak bir Activity başlatmak amacıyla derin bağlantı kullanmak için Activity, derin bağlantı URL'leriyle ayarlanmalı ve Android uygulama manifest dosyasında karşılık gelen bir intent filtresine sahip olmalıdır.

Etkinliklerinizin erişilebilir olduğunu ve derin bağlantılar kullanılarak Uygulama İşlemleri kullanılarak tetiklenip tetiklenebileceğini test etmek için aşağıdaki adb komutunu çalıştırın:

$ adb shell am start -a android.intent.action.VIEW -d "AppLinksURL"

Örnek:

$ adb shell am start -a android.intent.action.VIEW -d "https://www.example.com/deeplink"

Etkinliğiniz adb komutuyla doğru şekilde başlamazsa aşağıdakileri kontrol edin:

  • Uygulama manifest dosyanızda etkinlik android:exported=true içerdiğinden, Google Asistan'ın amaçları kullanılarak başlatılabilir.
  • Uygulama Bağlantıları URL'lerini kullanıyorsanız Android Uygulama Bağlantılarını Kullanma bölümündeki tüm adımları uygulayın.

Uygulama İşlemleri politikaları

Uygulama İşlemleri, bunları tetikleyen kullanıcıların istenen deneyimi yaşamalarını sağlamak için belirli politikalara uymalıdır. En iyi kullanıcı deneyimini sağlamak ve Play Store incelemesinde gecikmeleri veya retleri önlemek için uygulamalarınızı göndermeden önce bu politikaları inceleyin.

  • Kullanıcıları kullanıcı odaklı içeriklere yönlendirme

    Uygulama İşlemi yerleşik amaçları (BII'ler) ve/veya parametreleri kullanıcıları yalnızca ilgili ve kullanıcının amaçladığı işleme yönlendirmelidir. Deneyim kullanıcı tarafından amaçlandığı sürece uygulama içi içerik, web sitesi içeriği veya dilimler ya da widget'lar halinde gösterilen bilgiler de buna dahildir.

    Örneğin, ORDER_MENU_ITEM BII uygulamaları, kullanıcıların belirtilen menü öğesi veya mutfak türü için sipariş başlatmalarına yardımcı olur. Bu politikanın tek istisnası, OPEN_APP_FEATURE BII'nizin kullanıcıları uygulamanızın ana ekranına yönlendirmesidir.

  • Kullanıcıları alakalı web içeriğine yönlendirme

    Kullanıcılar bir web sayfası içeriğine yönlendiriliyorsa web sitesi, kullanıcının amaçladığı işlemle alakalı olmalı ve markaya ait olmalıdır.

    Örneğin, GET_RESERVATION BII'nizi tetikleyen kullanıcıları uygulamanızın exampledomain.com markasına ait olmayan google.com/travel adresine yönlendirmek ihlal sayılır. GET_CALL_HISTORY BII'nizi tetikleyen kullanıcıların exampledomain.com/payment platformuna yönlendirilmesi ve bu kullanıcıların satın alma işlemi gerçekleştirmelerinin zorunlu tutulması da ihlale örnek olarak gösterilebilir.

  • Alakalı Uygulama İşlemleri BBI'lerini uygulayın

    Uygulanan BiI'lar doğrudan uygulamanın içeriği ve işleviyle ilişkili olmalıdır.

    Örneğin, uygulamanız İletişimler için Play Store kategorisindeyse Yiyecek ve İçecek kategorisindeki uygulamalar için önerilen ORDER_MENU_ITEM BII'yi uygulamayın.

  • Alakalı özel amaçlar uygulayın

    Özel amaçlar için tanımlanan sorgular, uygulamanın içeriği ve işleviyle ilgilidir. Bu politikanın olası ihlaline örnek olarak, Ulaşım Play Store kategorisindeki bir uygulama için "Burrito tariflerini göster" sorgu kalıbıyla custom.action.intent.GET_RECIPE niyetini oluşturmak verilebilir.