في التطبيقات المتوافقة مع الأجهزة الجوّالة، تتيح ميزة الربط بصفحة معيّنة في التطبيق للمستخدمين الانتقال مباشرةً إلى المحتوى داخل التطبيق. في حال عدم استخدام ميزة الربط بصفحة معيّنة في التطبيق، إذا شاركت مع أحد أصدقائك قميصًا عثرت عليه في تطبيق متجر للبيع بالتجزئة، سينقل الرابط الذي ترسله إليه إما إلى المتصفّح أو إلى "متجر Play"، حيث سيحتاج إلى تثبيت التطبيق أو فتحه ثم البحث عن المحتوى. لا تُعد أي من الحالتين بمثابة تجربة مستخدم رائعة. من خلال الروابط لصفحات في التطبيق، سينقل الرابط صديقك إلى القميص نفسه الذي عثرت عليه داخل تطبيق البيع بالتجزئة.
في هذا المستند، ستتعرّف على كيفية استخدام الروابط لصفحات في التطبيق من أجل إنشاء تجارب غنيّة وتفاعلية لمستخدمي ميزة "الاستهداف بالاستناد إلى الجمهور".
توجيه مستخدم نموذج سلوك المستخدِمين إلى تطبيق
الرابط المؤدي إلى صفحة في التطبيق هو مجرد رابط يؤدي إلى تطبيق. يمكن لوكيل إدارة الطلبات من حملة التسويق على شبكة البحث فتح تطبيق تم تثبيته على هاتف أحد الأشخاص باستخدام OpenUrlAction حيث يكون عنوان URL هو رابط يؤدي إلى صفحة في التطبيق الذي تريد تشغيله. يمكنك الاطّلاع على مزيد من المعلومات في مقالة إنشاء روابط لصفحات في التطبيق.
راجِع المثال التالي. لفتح بودكاست Google Cloud ضمن تطبيق Google Podcast، يمكن إنشاء OpenUrlAction باستخدام عنوان URL:
https://www.google.com/podcasts?feed=aHR0cDovL2ZlZWRzLmZlZWRidXJuZXIuY29tL0dvb2dsZUNsb3VkUGxhdGZvcm1Qb2RjYXN0
تم ضبط العديد من منتجات Google لتتوافق مع الروابط لصفحات في التطبيق تعمل أيضًا كعناوين URL للويب، بما في ذلك YouTube و"خرائط Google".
لتشغيل أي من هذه التطبيقات من وكيل، نحتاج إلى تحديد هذه القيمة كعنوان URL في OpenUrlAction. في نموذج JSON التالي، يتم تحديد بطاقة غنية لعرض الإعلانات المتجاوبة على شبكة البحث (RBM) بثلاثة إجراءات لفتح عناوين URL، ينقل كلّ منها إلى رابط لصفحة معيّنة في تطبيق مختلف.
{
"contentMessage":{
"richCard":{
"standaloneCard":{
"cardOrientation":"VERTICAL",
"cardContent":{
"title":"Did you know that you can open apps from an RBM agent?",
"description":"",
"suggestions":[
{
"action":{
"text":"Google Cloud Podcast",
"postbackData":"podcast_tap",
"openUrlAction":{
"url":"https://www.google.com/podcasts?feed=aHR0cDovL2ZlZWRzLmZlZWRidXJuZXIuY29tL1JvYkNlc3Rlcm5pbm8&nord=0"
}
}
},
{
"action":{
"text":"YouTube Video",
"postbackData":"youtube_tap",
"openUrlAction":{
"url":"https://www.youtube.com/embed/xSE9Qk9wkig"
}
}
},
{
"action":{
"text":"Google Maps",
"postbackData":"maps_tap",
"openUrlAction":{
"url":"https://goo.gl/maps/ToMSdr4PYX62"
}
}
}
]
}
}
}
}
}
عند عرض حمولة JSON هذه في برنامج RCS الخاص بالمستخدم، يتطابق رمز الخطوة المقترَحة مع التطبيق المرتبط برابط لصفحة معيّنة. يؤدي النقر على أي من الخطوات المقترَحة إلى تشغيل التطبيق المقابل مباشرةً للمحتوى المشفَّر في عنوان URL.
ما الفائدة من ذلك؟
هناك عدة أسباب قد تدفعك إلى إنشاء رابط لصفحة في تطبيق.
المصادقة
إذا كان موظّف الدعم يتعامل مع معلومات حسّاسة، يمكنك اتّباع إحدى الطرق التالية لمساعدة العميل في تأمين موظّف الدعم: استخدام رابط لصفحة في تطبيقك للمساعدة في مصادقة العميل باستخدام بصمة الإصبع أو تسجيل الدخول أو أي وسيلة أخرى. بعد مصادقة المستخدم بنجاح، يمكنك تتبُّع المصادقة من جهة الخادم وإعادة توجيه المستخدم إلى موظّف الدعم من خلال بدء رسالة RBM جديدة. إذا كنت ترسل أي رسائل متابعة قد تكون حساسة، يمكنك التحقّق من جهة الخادم للتأكّد من مصادقة المستخدم. وإذا لم تكن كذلك، يمكنك إرسالها مرة أخرى إلى التطبيق لتجديد الرمز المميز للمصادقة.
دعم حالات الاستخدام المعقّدة
تُعدّ موظّفو الدعم من خلال تكنولوجيات الذكاء الاصطناعي (RBM) رائعين للتفاعلات الحوارية، ولكن يمكن للتطبيقات تقديم خدمات أفضل في بعض حالات الاستخدام. على سبيل المثال، إذا كانت لديك شركة أثاث وأنت بصدد إنشاء تجربة واقع معزّز تتيح للمستخدمين تجربة الأثاث في منازلهم (راجِع الصورة التالية)، لا يمكن استخدام حالة الاستخدام إلا من خلال تطبيق.
في هذه الحالات، من المنطقي أن توجّه مستخدمي نموذج "إدارة الأداء من خلال العلامات" إلى تطبيقك للقيام ببعض الوظائف. يمكن لتطبيقك إعادة المستخدم إلى محادثة RBM في أي وقت من خلال بدء رسالة جديدة من موظّف الدعم.
تسهيل عملية الدفع
يمكنك إتاحة عمليات الدفع من خلال تطبيق تابع لجهة خارجية يوفّر روابط لصفحات في التطبيق.
على سبيل المثال، لنفترض أنّك تريد إتاحة تحويل الأموال من خلال شركة الدفع الافتراضية AcmePay. من خلال البحث على الإنترنت، اكتشفت أنّه تتيح منصة AcmePay استخدام الروابط لصفحات في التطبيق باستخدام بنية معرّف الموارد المنتظم (URI) الفريدة التي تتيح لك إدخال قيم للمستلمين والمبلغ وملاحظة باستخدام مَعلمات سلسلة طلب البحث .
استنادًا إلى هذه المعرفة، على موظّف الدعم إنشاء OpenUrlAction باستخدام عنوان URI المُحدَّد والمُعدَّل لخدمة AcmePay لجزء عنوان URL من الإجراء المقترَح.
acmepay://paycharge?recipients=Jane+Smith&amount=10¬e=Money+For+You!
بعد أن ينقر مستلِم رسالة RBM على الإجراء المقترَح، يتم تشغيل تطبيق AcmePay مباشرةً في شاشة المعاملة مع تعبئة القيم المُرسَلة مسبقًا.
ماذا يحدث في حال عدم تثبيت التطبيق؟
إذا لم يتم تثبيت تطبيق على جهاز المستخدم، يعتمد سلوك الربط لموضع معيّن على بنية عنوان URI الذي يتم تمريره إلى OpenUrlAction. إذا كان عنوان URL يمكنه التعرّف على تطبيق واحد على الأقل على الجهاز (على سبيل المثال، يتعرّف Chrome على عناوين URL التي تبدأ بـ "http://")، يتم عرض الإجراء المقترَح كالمعتاد في ذلك التطبيق. وعندما ينقر المستخدم على الإجراء، يتم فتح عنوان URL في التطبيق الذي يتعرّف على بنية عنوان URL.
إذا كنت مطوّر التطبيق، من المفيد استخدام روابط لصفحات في التطبيق باستخدام عناوين URL تبدأ بـ "http://" وتشير إلى نطاق تملكّه، لأنّ Chrome يمكنه توجيه المستخدم إلى صفحة ويب كإجراء احتياطي. في صفحة الويب، يمكنك توجيه المستخدم إلى تنزيل التطبيق أو توجيهه على النحو الذي تراه مناسبًا لحالة الاستخدام.
إذا كان معرِّف الموارد المنتظم (URI) يستخدم بنية مخصّصة لا يتعرّف عليها أي تطبيق على الجهاز، لن يتم عرض الإجراء المقترَح في رسالة RBM.
للتأكّد من ظهور الإجراءات المقترَحة دائمًا، يمكنك استخدام عنوان URL تملكه ومحاولة توجيه صفحة الويب للمتصفح إلى معرّف موارد منتظم مخصّص لتشغيل التطبيق. وإذا كان التطبيق متوفّرًا على الجهاز، سيتم تشغيله على النحو المتوقّع. وإذا لم يكن الأمر كذلك، سيبقى العميل على صفحة الويب، حيث يمكنك توجيهه حسب الحاجة لحالة الاستخدام.
فيما يلي مثال على كيفية القيام بذلك باستخدام JavaScript. يحاول النص البرمجي إعادة توجيه المستخدم إلى تطبيق AcmePay، ولكن إذا لم يكن هذا التطبيق مثبّتًا، يعيد النص البرمجي توجيه المستخدم إلى متجر Google Play لتنزيل التطبيق.
<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width,minimum-scale=1.0, maximum-scale=1.0" />
<title>Acme Pay</title>
<script type="text/javascript">
window.onload = function() {
// Launch Acme Pay app for existing users
window.location = 'acmepay://paycharge?recipients=Jane+Smith&amount=10¬e=Money+For+You!';
// Redirect to Acme Pay app download for new users
setTimeout("window.location = 'https://play.google.com/store/apps/details?id=com.acmepay.android';", 1000);
}
</script>
</head>
<body>
<h1>Redirecting…</h1>
</body>
</html>
الخاتمة والملخّص
يمكنك استخدام الإجراء المقترَح OpenUrlAction لإنشاء رابط لصفحة معيّنة في التطبيقات التي تملكها أو التطبيقات التي تريد تشغيلها للمساعدة في جذب المستخدمين. ومن خلال الربط بصفحة معيّنة، يمكنك توفير تجربة غنية وجذابة للمستخدمين أو مستوى أمان مُحسَّن لمشاركة المحتوى الحسّاس.
حظًا سعيدًا في البرمجة.