البحث في الموقع
المحتوى عن 'deep-link'.
-
مقدمة ببساطة شديدة، الرابط العميق هو رابط يأخذك إلى محتوى بعينه، وعليه فإن أغلب الروابط في الوِب هي روابط عميقة، دعنا نأخذ مثالين على الروابط العادية والعميقة كي نرى الفرق بينهما: هذا رابط عميق، يأخذك مباشرة إلى صفحة حذاء على موقع Jet.com: http://www.jet.com/product/Rockport-Mens-Evander-Oxfords-Shoes/023eab3cfe1b4e27897f7a48d76f4168 أما هذا، فرابط عادي، يربطك بصفحة الموقع الأساسية فقط، وليس بعنصر أو محتوى بعينه داخل الموقع: http://www.jet.com/ الروابط العميقة المُؤجَّلة Deferred Deep Links تذهب الروابط العميقة المُؤجَّلة بالمستخدم إلى المحتوى حتى لو لم يكن التطبيق على جهازه حين ينقر على الرابط، إذ أن الرابط سيوجهه حينها إلى المتجر لتنزيل التطبيق وتثبيته أولًا، ثم يأخذه إلى المحتوى الذي يربط إليه بعد فتح التطبيق مباشرة. مثال 1: التطبيق موجود لدى المستخدم، فيذهب الرابط بالمستخدم مباشرة إلى المحتوى. مثال 2: التطبيق غير موجود لدى المستخدم، فيوجه الرابط المستخدم إلى متجر التطبيقات أولًا لتثبيت التطبيق، ثم يذهب به إلى المحتوى. الروابط السياقية العميقة Contextual Deep Links الروابط السياقية العميقة لها نفس وظائف الروابط العميقة المُؤجَّلة، مع زيادة تخزين معلومات عن المكان الذي يريد المستخدم الذهاب إليه، وأين تم النقر على الرابط، ومن الذي شارك الرابط في البداية، وبيانات أخرى كثيرة. وهكذا فإن الروابط السياقية العميقة تضيف قيمة إلى مطوري التطبيقات والمستخدمين على حد سواء؛ فيبني المطورون مزايا أحسن من مجرد ربط المحتوى، مثل برامج الإحالة والرسائل الترشيحية الموجهة (حيث ترى ترشيحات صديقك داخل التطبيق إذا شارك عنصرًا داخله)، وينتفع المستخدمون من ناحية أخرى لأن التطبيقات ستقدم تجربة استخدام أفضل ومعلومات مفيدة أكثر. مشكلة الروابط العميقة مع الهواتف إن فتحت رابط الحذاء السابق من Jet.com على هاتفك، فسيأخذك الرابط إلى موقع Jet عبر المتصفح العادي حتى لو كان لديك تطبيق على هاتفك لموقع Jet. يعود السبب في ذلك إلى أن الروابط المخصصة للوِب لا تعمل مع تطبيقات الهواتف. المشكلة هنا أن تجربة استخدام تطبيق Jet على الهواتف أفضل من تجربة استخدام الموقع نفسه على الهاتف، حتى لو كان تصميمه متجاوبًا. الحلول المتوفرة للتطبيقات لتستفيد من الروابط العميقة توّجهك الروابط العميقة في تطبيقات الهواتف - الروابط العميقة اختصارًا - إلى محتوى محدَّد بداخلها؛ فإن أردت إرسال رابط ذلك الحذاء إلى صديقك، فإنك ترسل إليه رابطًا عميقًا يذهب به مباشرة إلى الحذاء داخل تطبيق Jet؛ أما بدون ذلك الرابط، فسيضطر صديقك إلى البحث عن تطبيق Jet داخل المتجر، ثم يفتح التطبيق ويبحث عن الحذاء بنفسه كما فعلت أنت. دعنا ننظر أولًا في سلوك الروابط العميقة التقليدية (Traditional Deep Links) ثم نستعرض البدائل. الروابط العميقة التقليدية توّجه الروابط العميقة المستخدم إلى محتويات داخل التطبيق طالما كان التطبيق موجودًا بالفعل على جهازه حين يفتح الرابط، ذلك يعني أن الروابط العميقة التقليدية لا تعمل إن لم يكن التطبيق على الجهاز، وسيظهر خطأ أو إجراء بديل. مثال 1: التطبيق موجود على جهاز المستخدم مسبقًا، فسيفتح الرابط بشكل طبيعي داخل التطبيق. مثال 2: التطبيق غير موجود على الجهاز، تظهر رسالة خطأ. نُظم محددات المصادر الموحدة URI Schemes كانت نظم URI (اختصار لـ Uniform Resource Identifier) هي الصورة الأولية للربط العميق بالنسبة لتطبيقات الهواتف، وهي تشبه إنشاء إنترنت خاص لتطبيقك بروابط مثل myapp://path/to/content. من السهل إعداد نُظُم URI، كما أن أكثر التطبيقات لديها نظام خاص بها؛ أما سيئاتها فهي أن جهاز المستخدم لن يعرف ما هو هذا الرابط إلا إن كان التطبيق المرتبط به موجودًا مسبقًا على الجهاز، إضافة إلى فقرها لخيار بديل في حالة عدم وجود ذلك التطبيق. حُلّت تلك المشكلة باستخدام رابط http:// عادي ليُفتح في المتصفح، لكن مع استثناء أن هذا الرابط به نص JavaScript يعيد توجيه المستخدم إلى التطبيق، فيفتح التطبيق إن كان موجودًا، أو يفتح المتجر لتثبيت التطبيق. ولا زال هذا هو الأسلوب الأساسي للربط العميق في أندرويد، أما Apple فقد بدأت بحجب هذه الطريقة منذ 2015 بالتزامن مع إطلاقها للروابط العالمية Universal Links. روابط iOS الشاملة iOS Universal Links أطلقت Apple هذا الأسلوب من الربط العميق حلًّا لعدم وجود إجراء بديل في روابط نُظم URI، والروابط في هذا الأسلوب هي روابط عادية (http://mydomain.com/) لكنها توجه المستخدم إلى التطبيق إن كان لديه، وتوجهه إلى صفحة وِب إن لم يكن التطبيق على جهازه. يتأكد نظام iOS عند النقر على الرابط مما إذا كان التطبيق مثبتًا على الجهاز بالفعل أم لا، ويفتح التطبيق مباشرة إن كان التطبيق موجودًا دون تحميل صفحة الوِب حتى. أما إن لم يجد التطبيق فإن الرابط يفتح في متصفح سفاري كأي رابط عادي. وقد وجدنا من دراسة أجريناها في منصة Branch على آلاف التطبيقات أن هذا الأسلوب من الروابط – روابط iOS الشاملة - قد زاد من معدل التحويل بنسبة 40%. روابط التطبيقات App links في أندرويد صممت جوجل روابط التطبيقات بطريقة مشابهة للروابط الشاملة من iOS، وتتصرف مثلها أيضًا أو على نحو قريب منها، بحيث أنها على هيئة رابط عادي يوجه المستخدم إلى التطبيق وإلى صفحة الويب على حد سواء. وكانت النتيجة تجربة استخدام أفضل، لكنها لم تشهد رواجًا ولا تبنيًا بسبب أن نظم URI لا زالت مدعومة تماما في كل إصدارات أندرويد. روابط التطبيقات من فيس بوك أنشأت فيس بوك روابط التطبيقات في 2014 لتكون معيارًا مفتوحًا لحل مشكلة محدودية روابط نظم URI العميقة، ويتكون رابط التطبيق هنا من جزئين رئيسيين: مجموعة وسوم وصفية (<meta>) تُضاف إلى وجهة صفحة الوب في رابط http:// العادي، وتحدد هذه الوسوم موقع نظام URI الخاص بالمحتوى المرتبط بالتطبيق، والإجراء الذي سيحدث إن لم يكن التطبيق مثبتا. محرك توجيه (Routing Engine) لاستخدامه “داخل التطبيقات” التي تدعم فتح تلك الروابط، ويتحقق هذا المحرك من رابط التوجيه في وسوم روابط التطبيق قبل فتحها، ثم يفتح التطبيقات المرتبطة بها أو ينفذ الإجراء البديل. غير أن هذا المعيار -معيار روابط التطبيق الخاص بفيس بوك- به عيب خطير، إذ يتطلب عملًا من التطبيق الأصلي والتطبيق الموجَّه إليه على السواء، ولم يكن محرك التوجيه routing engine إلا في تطبيقات فيس بوك وماسنجر رغم التبني الواسع الذي حظيت بع مكونات الوسوم الوصفية (<meta>). ولأن فيس بوك تريد أن يبقى المستخدمون داخلها ما استطاعت، فقد أزالت محرك التوجيه من كل مكان عدا تطبيق أندرويد الرئيسي لها. إضافة إلى أنها تحجب روابط iOS الشاملة، فهذا يعني أنها تقطع الطريق على أي رابط يحاول فتح تطبيق خارج فيس بوك أو ماسنجر في iOS. ترجمة –بتصرف- لمقال What is deep linking? The simplest explanation of deep links and what makes a good deep link من موقع Branch. حقوق الصورة البارزة محفوظة لـ Freepik