Wear OS için Google Asistan

Kol saati sesli asistanları, hareket halindeyken hızlı ve etkili şekilde senaryolara olanak tanır. Sesli görüşme Kullanıcı, giyilebilir cihazlar üzerindeki etkileşimler dinamiktir. Bu, kullanıcının cihaza bakmadan bileğinize dokundurabilir.

Android geliştiricileri, Asistan Uygulama İşlemleri'ni kullanarak Wear OS uygulamalarının kapsamını genişleterek Google Asistan, aşağıdaki gibi sesli komutlarla kullanıcıları uygulamalarına hızlı bir şekilde yönlendirir: "Ok Google, ExampleApp'te koşumu başlat."

Sınırlamalar

Wear'da Asistan, medya ve antrenman izleme etkinliği etkileşimlerini destekler. Örneğin, Medya uygulamalarını Asistan'la entegre etme hakkında daha fazla bilgi için Google Asistan'a bakın. ve medya uygulamaları hakkında daha fazla bilgi edinin. Aşağıdaki Sağlık ve Fitness BBI'leri, şunlar için desteklenir: Wear OS uygulamaları:

İşleyiş şekli

Uygulama İşlemleri, uygulama işlevlerini Asistan'a genişleterek kullanıcıların uygulamaya erişebilmesini sağlar seslerini kullanarak hızlıca ulaşmasını sağlayabilirsiniz. Kullanıcı, Asistan'a şunu belirttiğinde: uygulamanızı kullanmak istediklerinde, Asistan sizin adınıza kayıtlı Uygulama İşlemlerini uygulamasının shortcuts.xml kaynağındaki uygulamalar.

Uygulama İşlemleri, shortcuts.xml bölümünde Android özellik öğeleriyle açıklanmaktadır. Özellik öğeleri, anlamsal olan yerleşik amaçları (BII) eşler bir uygulama özelliğinin açıklamaları, bağlantı şablonunu kullanabilirsiniz. Uygulamanızı Google Play Console'u kullanarak yüklediğinizde Google, shortcuts.xml içinde belirtilen özellikleri kaydederek kullanılabilir hale getirir kullanıcıların Asistan'dan tetiklemesi için.

Uygulama İşlemleri akışı

Önceki şemada, egzersizini tek başına duraklatan bir kullanıcı gösterilmektedir uygulamasını indirin. Aşağıdaki adımlar gerçekleşir:

  1. Kullanıcı, ilgili giyilebilir uygulama için Asistan'dan sesli istekte bulunur.
  2. Asistan, isteği önceden eğitilmiş bir modelle (BII) eşleştirir ve sorguda bulunan ve BII tarafından desteklenen parametreleri gösterir.
  3. Bu örnekte Asistan, sorguyu PAUSE_EXERCISE BII ile eşleştirir. ve egzersiz adı parametresini ("hike") çıkarır.
  4. Uygulama, shortcuts.xml özelliklerinin yerine getirilmesiyle tetiklenir tanımını değiştireceğiz.
  5. Uygulama, istek karşılamayı işleyerek egzersizi duraklatır.

Bağlantı

Uygulama İşlemleri geliştirme, uygulamanızın Android destekli cihaz ekosisteminde.

  • Tethered: Giyilebilir bir uygulamanın tam olarak mobil uygulamaya bağımlı olduğu durumlar sırasında Asistan'a saat üzerinden yapılan kullanıcı sorguları karşılanır. mobil cihazda. Uygulama İşlemleri karşılama mantığı, mobil uygulamanın düzgün şekilde çalışmasını sağlayın.

  • Bağlı olmayan: Giyilebilir bir uygulama, bir mobil uygulamadan bağımsız olduğunda ve Asistan, kullanıcı sorgularını kol saatinde yerel olarak yerine getirir. Uygulaması Bu isteklerin gerçekleştirilebilmesi için Actions özelliklerinin giyilebilir uygulamaya entegre edilmesi gerekir olduğunu öğrenmiştiniz.

ziyaret edin.

Wear'a ses özellikleri ekleyin

Uygulama İşlemleri'ni Wear OS uygulamanıza entegre etmek için aşağıdaki adımları uygulayın:

  1. Sesle etkinleştirmek istediğiniz uygulama içi işlevi eşleştirin ilgili BII.
  2. Ana etkinliğinizde Android kısayolları için destek beyan edin AndroidManifest.xml kaynak.

    <!-- AndroidManifest.xml -->
    <meta-data
        android:name="android.app.shortcuts"
        android:resource="@xml/shortcuts" />
    
  3. AndroidManifest.xml dosyasına bir <intent-filter> öğesi ekleyin. Bu durumda, Asistan'ın, uygulamanızın içeriğine bağlanmak için derin bağlantıları kullanması

  4. BBI'leriniz için sipariş karşılama ayrıntılarını sağlamak üzere Kısayollar.xml oluşturun. Kullandığınız Uygulamanızın BBI'lerini Asistan'a bildirmek için capability kısayol öğeleri destekler. Daha fazla bilgi için Özellik ekleme bölümüne bakın.

  5. shortcuts.xml içinde, seçtiğiniz BII için bir özellik uygulayın. İlgili içeriği oluşturmak için kullanılan Aşağıdaki örnekte START_EXERCISE BII özelliği gösterilmektedir:

    <?xml version="1.0" encoding="utf-8"?>
    <!-- This is a sample shortcuts.xml -->
    <shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
      <capability android:name="actions.intent.START_EXERCISE">
        <intent
          android:action="android.intent.action.VIEW"
          android:targetPackage="YOUR_UNIQUE_APPLICATION_ID"
          android:targetClass="YOUR_TARGET_CLASS">
          <!-- Eg. name = "Running" -->
          <parameter
            android:name="exercise.name"
            android:key="name"/>
          <!-- Eg. duration = "PT1H" -->
          <parameter
            android:name="exercise.duration"
            android:key="duration"/>
        </intent>
      </capability>
    </shortcuts>
    
  6. Mümkünse, Uygulamanızdaki özellikleri ve içeriği temsil eden satır içi envanter.

    <capability android:name="actions.intent.START_EXERCISE">
      <intent
        android:targetPackage="com.example.myapp"
        android:targetClass="com.example.myapp.ExerciseActivity">
        <parameter android:name="exercise.name" android:key="exercise" />
      </intent>
    </capability>
    
    <shortcut android:shortcutId="CARDIO_RUN">
      <capability-binding android:key="actions.intent.START_EXERCISE">
        <parameter-binding
          android:key="exercise.name"
          android:value="@array/run_names" />
        </capability-bindig>
    </shortcut>
    
  7. Uygulamanızın mantığını, gelen Uygulama İşlemleri yerine getirmeyi işleyecek şekilde güncelleyin.

    //FitMainActivity.kt
    
    private fun handleIntent(data: Uri?) {
        var actionHandled = true
        val startExercise = intent?.extras?.getString(START_EXERCISE)
    
        if (startExercise != null){
            val type = FitActivity.Type.find(startExercise)
            val arguments = Bundle().apply {
                putSerializable(FitTrackingFragment.PARAM_TYPE, type)
            }
            updateView(FitTrackingFragment::class.java, arguments)
        }
        else{
            showDefaultView()
            actionHandled = false
        }
        notifyActionSuccess(actionHandled)
    }
    

Uygulamanızı önizleme, test etme ve yayınlama

Uygulama İşlemleri, uygulamanızı incelemeniz ve test etmeniz için araçlar sağlar. Daha ayrıntılı Android Studio için Google Asistan eklentisi başlıklı makaleden bilgi edinebilirsiniz. Planınızı uygulamanızı test edip bir test sürümü oluşturduğunuzda, Uygulama İşlemleri'ni inceler ve dağıtır. E-postanızın içeriğini kontrol etmek için .

En iyi uygulamalar

Uygulamanızı Asistan'la entegre ederken olumlu bir kullanıcı deneyimi sunmak için en iyi uygulamaları takip edin.

Dokunsal teknolojisin yanı sıra alakalı veya alakalı bir onay ekranı gösterin sesli geri bildirim (kullanıcının isteğine yanıt vermek için) veya bir hata uyarısı görebilirsiniz.

Temel kalite Daha iyi kalite En iyi kalite
  • Bir etkinlikten ConfirmationActivity başlatmak için niyet oluşturun.
  • Bir etkinlikten ConfirmationActivity başlatmak için niyet oluşturun.
  • Mevcut durumu belirtmek için zil sesi VE dokunsal geribildirim çalar.
  • Bir etkinlikten ConfirmationActivity başlatmak için niyet oluşturun.
  • Hatayı veya başarıyı belirtmek için Metin-Konuşma (TTS) ve dokunsal geri bildirim.

Sık karşılaşılan hatalar ve çözümleri

Aşağıdaki hata durumlarında, aşağıdaki önerilen uygulamayı kullanın ConfirmationActivity mesajlaşma.

Hata durumu Örnek kullanıcı etkileşimi Uygulama yanıtı
Etkinlik zaten devam ediyor "ExerciseName'imi başlat"
"Resume my ExerciseName"
Görüntüleme hatası: Zaten devam eden etkinlik."
Etkinlik başlamadı "ExerciseName etkinliğimi duraklat/durdur" Görüntüleme hatası: "Hiçbir etkinlik başlamadı."
Etkinlik türleri eşleşmiyor "ExerciseName etkinliğimi duraklat/durdur," Bu, devam eden aktiviteden farklı bir egzersiz türüdür. Görüntüleme hatası: "Etkinlik türü uyuşmazlığı."
Giriş hatası "ExerciseName'imi başlat," Kullanıcı uygulamaya giriş yapmadığında. Kullanıcıyı uyarmak ve giriş ekranına yönlendirmek için dokunsal geri bildirim oynayın.
İzin hatası Kullanıcının istenen etkinliği başlatma izni yok. Kullanıcıyı uyarmak ve izin isteği ekranına yönlendirmek için dokunma teknolojisiyle oynatın.
Sensör sorunu Kullanıcının cihaz ayarlarında konum hizmetleri kapalıdır. Kullanıcıları uyarmak ve sensör hatası ekranını göstermek için dokunma teknolojisiyle oynayın. Sonraki isteğe bağlı adımlar:
.
  • Etkinliği sensör takibi olmadan başlat ve kullanıcıya bildir.
  • Etkinliği sensör izleme olmadan başlatmak için kullanıcıdan onay isteyin.