shortcuts.xml
'teki özellikler, kullanıcıların uygulamanızı başlatmak ve doğrudan belirli bir görevi gerçekleştirmek için yapabileceği işlem türlerini belirtmenize olanak tanır.
Örneğin, Google Asistan Uygulama İşlemleri, geliştiricilerin uygulama içi özellikleri yerleşik intent'lere (BIIs) genişletmesine olanak tanıyarak kullanıcıların sözlü komutları kullanarak bu özellikleri etkinleştirmesine ve kontrol etmesine olanak tanır. Bir özellik, işlemin adından ve uygulamanızdaki hedefi hedefleyen ve kullanıcı amacını çözen bir intent
öğesinden oluşur.
shortcuts.xml dosyasında özellikleri tanımlama
Android uygulama geliştirme projenizdeki bir shortcuts.xml
kaynak dosyasında capability
öğelerini tanımlarsınız. capability
öğesi tanımlamak için aşağıdakileri yapın:
- Statik kısayollar oluşturma başlıklı makaledeki talimatları uygulayarak bir
shortcuts.xml
kaynağı oluşturun. Yeteneğinize aşağıdaki gerekli bilgileri ekleyin:
Yetenek adı: Uygulamanızın desteklemesini istediğiniz işlem. Özellik tanımları gerektiren özelliğin bileşen dokümanlarına bakın. Uygulama İşlemleri sesli komutları, özellik adları için BII
Action ID
BII referansında bulabileceğiniz BII'yi kullanır. Örneğin,GET_THING
BII,Action ID
değeriniactions.intent.GET_THING
olarak listeler.Uygulama hedefi: Kullanıcı isteğini yerine getirmek için işlemin başlattığı uygulamadaki hedef.
capability
içine yerleştirilmişintent
öğelerini kullanarak uygulama hedeflerini tanımlayın.Parametre eşlemeleri: Her
intent
, intent'inextra
verileri olarak iletilecek parametreler içerebilir. Örneğin, her Uygulama İşlemleri BII, kullanıcıların BII'yi tetikleyen sorgularda sıklıkla sağladığı bilgileri temsil eden alanları içerir.
Aşağıdaki örnekte, kullanıcıların bir fitness uygulamasında antrenmana başlamak için Asistan ile sözlü komutlar kullanmasına olanak tanıyan bir BII olan actions.intent.START_EXERCISE
için shortcuts.xml
'te bir özellik tanımı gösterilmektedir:
<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="com.example.sampleApp"
android:targetClass="com.example.sampleApp.ExerciseActivity">
<parameter
android:name="exercise.name"
android:key="exerciseType"/>
</intent>
</capability>
</shortcuts>
Önceki örnekte <capability>
android:name
özelliği START_EXERCISE
BII'yi ifade etmektedir. Bir kullanıcı, Asistan'a "Hey Google, ExampleApp'te bir koşu başlat" diyerek bu BII'yi çağırırsa Asistan, iç içe yerleştirilmiş intent
öğesinde sağlanan bilgileri kullanarak kullanıcı isteğini yerine getirir. Bu örnekteki intent
, aşağıdaki ayrıntıları tanımlar:
android:targetPackage
, bu intent için hedef uygulama paketini belirler.android:targetClass
alanı, hedef etkinliği belirtir:com.example.sampleApp.ExerciseActivity
.parameter
intent'i, BII parametresiexercise.name
için destek ve kullanıcıdan toplanan parametre değerininintent
içinde ek veri olarak nasıl iletileceğini belirtir.
Kısayolların bir özellikle ilişkilendirilmesi
Bir özelliği tanımladıktan sonra statik veya dinamik kısayollar bağlayarak işlevini genişletebilirsiniz. Kısayolların capability
ile bağlantısı, uygulanan özelliğe ve kullanıcının isteğinde yer alan gerçek kelimelere bağlıdır. Örneğin, bir kullanıcı fitness izleme uygulamanızda koşu yapmaya Asistan'a "Ok Google, ExampleApp'te koşu başlat" diyerek başlar. Asistan, exercise.name
parametresi için "run" değerine sahip geçerli bir egzersiz öğesi tanımlayan bir capability
örneğini başlatmak üzere kısayol kullanabilir.
Kısayolları Uygulama İşlemleri ile ilişkilendirme hakkında daha fazla bilgi için Uygulama İşlemleri'ne genel bakış başlıklı makaleyi inceleyin.