توفّر اختصارات Android للمستخدمين methods سريعة للقيام بإجراء أو الوصول إلى محتوى في أحد التطبيقات. ويمكن أن يقترح "مساعد Google" بشكل استباقي اختصارات Android الديناميكية للمستخدمين في الأوقات المناسبة، ما يتيح لهم اكتشاف وظائفك المفعّلة بالصوت وإعادة تشغيلها بسهولة.
على سبيل المثال، يمكنك فرض اختصار لكل ملاحظة ينشئها المستخدم فيها
تطبيق تدوين الملاحظات. أنت تصنع
الروابط الديناميكية المؤهَّلة للعرض على مساحات عرض Google، مثل "مساعد Google"
من خلال إضافة مكتبة Jetpack الخاصة بدمج اختصارات Google إلى مشروعك.
تتيح هذه المكتبة لخدمة "مساعد Google" استخدام الاختصارات الديناميكية التي تدفعها باستخدام
ShortcutManagerCompat
، وهي برنامج تضمين في Jetpack
ShortcutManager
واجهة برمجة التطبيقات.
عند استخدام مكتبة دمج اختصارات Google في تطبيقك، تظهر للمستخدمين اختصارات
الديناميكية التي ترسلها إلى Google كاقتراحات اختصارات صوتية
في تطبيق "مساعد Google". ويمكنك إرسال عدد غير محدود من الاختصارات الديناميكية إلى
"مساعد Google" باستخدام طريقة pushDynamicShortcut()
من مكتبة
ShortcutManagerCompat
.
ضبط إعدادات مشروع التطوير
لإضافة وظيفة الاختصارات الديناميكية إلى تطبيقك، يجب أن يكون لديك مكتبة دمج اختصارات Google، وهي مكتبة Jetpack من Android. يوضّح هذا القسم كيفية ضبط مشروع تطوير تطبيقك لتضمين هذه المكتبة.
لإضافة مكتبة Jetpack هذه وضبط مشروعك، اتّبِع الخطوات التالية:
يمكنك تعديل ملف
gradle.properties
للتعامل مع مكتبات Jetpack:gradle.properties
android.useAndroidX=true # Automatically convert third-party libraries to use AndroidX android.enableJetifier=true
إضافة ملحقات مكتبة Jetpack إلى
build.gradle
:app/build.gradle
dependencies { implementation "androidx.core:core:1.6.0" implementation "androidx.core:core-google-shortcuts:1.0.1" ... }
في الرمز النموذجي السابق، يمكنك إدراج مكتبتَين Jetpack والتبعيات لديك. تحتوي مكتبة "
androidx.core:core:1.6.0
" على صف واحد (ShortcutManagerCompat
) تستخدمه للدفع بالاختصارات الديناميكية إليه Google.androidx.core:core-google-shortcuts:1.0.1
هي مكتبة دمج Google اختصارات. لا تحتوي هذه المكتبة على تطبيقات موجّهة للمطوّرين واجهة برمجة التطبيقات. تؤدي إضافة هذه التبعية إلى السماح لـ "مساعد Google" بتولي الاختصارات الديناميكية التي تدفعها باستخدام الفئةShortcutManagerCompat
.
دفع الاختصارات الديناميكية
لإرسال الاختصارات الديناميكية المؤهَّلة للعرض على "مساعد Google"،
يجب أولاً إنشاء الاختصار باستخدام ShortcutInfoCompat.Builder()
الصف.
يمكنك بعد ذلك الضغط على الاختصار باستخدام زر
طريقة ShortcutManagerCompat.pushDynamicShortcut()
. يتمّ إرسال الاختصارات
عندما يُكمل المستخدِم إجراءً ذا صلة في تطبيقك. يُرسِل الرمز المميّز التالي
اختصارًا في كلّ مرّة يُنشئ فيها المستخدِم قائمة في تطبيق ملاحظات وقوائم.
ExampleOrderActivity
Kotlin
// Define the dynamic shortcut for an item var intent = Intent(context, DisplayOrderActivity::class.java) intent.action = Intent.ACTION_VIEW var shortcutInfo = ShortcutInfoCompat.Builder(context, id) .setShortLabel("Running") .setLongLabel("Start running") .addCapabilityBinding( "actions.intent.CREATE_ITEM_LIST", "itemList.name", Arrays.asList("My First List") ) .setIntent(intent) // Push the shortcut .build() // Push the shortcut ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo)
Java
// Define the dynamic shortcut for an item Intent intent = new Intent(context, DisplayOrderActivity.class); intent.setAction(Intent.ACTION_VIEW); ShortcutInfoCompat.Builder shortcutInfo = new ShortcutInfoCompat.Builder(context, id) .setShortLabel("Running") .setLongLabel("Start running") .addCapabilityBinding( "actions.intent.CREATE_ITEM_LIST", "itemList.name", Arrays.asList("My First List")) .setIntent(intent) .build(); // Push the shortcut ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo);
تمثّل هذه السمة id
المُشار إليها في طريقة ShortcutInfoCompat.Builder
في المقالة السابقة
يحدد الرمز النموذجي shortcutId
لكائن الاختصار الناتج. هذا id
أن تكون سلسلة حرفية فريدة. لمعرفة التفاصيل، يُرجى الاطّلاع على
مستندات اختصارات Android.
في المثال السابق، تربط الطريقة addCapabilityBinding
العنصر الديناميكي
اختصار إلى capability
من android:name
نفسه المحدد في
shortcuts.xml
تتيح لك هذه الطريقة ربط الاختصار
مَعلمة النية المضمّنة (BII) الدلالية.
يتم أحيانًا إرسال الاختصارات الديناميكية بدون أي معلمة BII محددة
المرتبطة بها. عندما يطلب المستخدم "مساعد Google"، يشغِّل intent
المحددة.
في الاختصار لتنفيذ الإجراء. يوضح المثال التالي دالة ديناميكية
اختصار بدون ارتباط معلَمة:
Kotlin
var intent: Intent = Intent(context, DisplayOrderActivity::class.java) intent.setPackage(this, "com.sample.app") intent.setAction(Intent.ACTION_VIEW) var shortcutInfo: ShortcutInfoCompat = ShortcutInfoCompat.Builder(context, id) .setShortLabel("Create a list") .setLongLabel("Create a list") .addCapabilityBinding("actions.intent.CREATE_ITEM_LIST") .setIntent(intent) .build() ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo);
Java
Intent intent = new Intent(context, DisplayOrderActivity.class); intent.setPackage(this, "com.sample.app"); intent.setAction(Intent.ACTION_VIEW); ShortcutInfoCompat shortcutInfo = new ShortcutInfoCompat.Builder(context, id) .setShortLabel("Create a list") .setLongLabel("Create a list") .addCapabilityBinding("actions.intent.CREATE_ITEM_LIST") .setIntent(intent) .build(); ShortcutManagerCompat.pushDynamicShortcut(context, shortcutInfo);
اختبار الاختصارات الديناميكية باستخدام "مساعد Google"
عندما ينجح "مساعد Google" في الوصول إلى اختصار ديناميكي من ، يكون الاختصار مؤهلاً للظهور كاقتراح لاختصار صوتي في تطبيق "مساعد Google" المتوافق مع Android يقترح تطبيق "مساعد Google" أحدث الاختصارات بواسطة تطبيقك.
لاختبار الاختصارات الديناميكية باستخدام "مساعد Google"، اتّبِع الخطوات التالية:
- يمكنك إنشاء معاينة لمهام التطبيقات وإعداد جهاز الاختبار أو لاختبار الإجراءات باتباع متطلبات الإعداد المتعلقة بمكوّن "مساعد Google" الإضافي.
- افتح التطبيق وحدِّد اختصارًا ديناميكيًا لإرساله. ثم أكمل إجراءً ما. على سبيل المثال، إذا ضغطت على اختصار عند إنشاء ملاحظة في تطبيق تدوين الملاحظات، يمكنك إنشاء ملاحظة جديدة.
- افتح الاختصارات في تطبيق إعدادات "مساعد Google" على جهازك. إنّ الاختصار الديناميكي في القائمة الخاصة بتطبيقك.