Join us in person and online for Firebase Summit on October 18, 2022. Learn how Firebase can help you accelerate app development, release your app with confidence, and scale with ease. Register now

تحويل مستخدمي الويب المحمول إلى مستخدمي التطبيق الأصليين

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

ماذا لو واجهت مشكلة إنشاء موقع ويب رائع للجوّال بالإضافة إلى تطبيق محلي جميل ، لكن لاحظ أن معدل التحويل الخاص بك أفضل في التطبيق المحلي منه على الويب. في هذه الحالة ، قد يؤدي تحويل مستخدمي ويب الجوال لتنزيل تطبيقك إلى تعزيز عملك. بينما قد يكون نقلها من واحد إلى آخر أمرًا صعبًا ، فإن الروابط الديناميكية تجعل الأمر سهلاً. باستخدام القليل جدًا من التعليمات البرمجية ، يمكنك إضافة قدرة المستخدم على النقر فوق ارتباط على الويب على هاتفك المحمول والانتقال إلى الصفحة المقابلة في تطبيقك ، حتى إذا كان عليه الانتقال إلى متجر التطبيقات أو متجر Google Play لتثبيته أولاً!

الفوائد الرئيسية

  • حوّل مستخدمي الويب عبر الأجهزة المحمولة إلى مستخدمين أصليين للتطبيق مع جعل الانتقال مريحًا قدر الإمكان بالنسبة لهم.
  • يمكن للمستخدمين بدء تطبيقك بنفس المحتوى الذي كانوا يشاهدونه على موقعك.
  • القليل جدا من التكامل المطلوب.

إليك كيفية البدء!

قبل ان تبدأ

اجعل محتوى تطبيقك قابلاً للربط العميق

يتمثل مفتاح تحويل مستخدمي ويب الجوال إلى مستخدمي تطبيقات محلية في التأكد من أن المستخدم يرى نفس المحتوى عند فتح التطبيق الذي يشاهده على الويب. لذلك ، قبل أن تتمكن من البدء في إرسال مستخدمي الويب على الهاتف المحمول إلى تطبيقك ، يجب أن يكون تطبيقك قادرًا على تلقي روابط عميقة للمحتوى.

إذا كنت قد نفذت ارتباطات iOS العامة أو ارتباطات تطبيقات Android ، فمن المحتمل أنك قد أنجزت هذا العمل بالفعل. ولكن إذا لم يكن الأمر كذلك ، فقم بإضافة منطق إلى تطبيقك يأخذ عنوان URL من موقع الويب الخاص بك ويعرض المحتوى المقابل داخل تطبيقك للمستخدم.

قم بإعداد مشروع Firebase جديد وتثبيت Dynamic Links SDK في تطبيقك. ( iOS ، Android ، C ++ ، Unity ). يسمح تثبيت Dynamic Links SDK لـ Firebase بتمرير البيانات حول الرابط الديناميكي بعد أن يقوم المستخدم بتثبيت التطبيق. بدون SDK ، لا توجد طريقة لتوصيل مستخدم ما بعد التثبيت بنقرة التثبيت المسبق.

حان الوقت الآن لإعداد الروابط التي ستنقل الأشخاص من موقع الويب الخاص بك إلى تطبيقك الأصلي. لا تقلق إذا لم يكن التطبيق مثبتًا لدى المستخدمين لديك ؛ يمكن أن تعتني الروابط الديناميكية بذلك نيابة عنك.

في كل صفحة من صفحات موقع الويب الخاص بك ، قم بإنشاء ارتباط ديناميكي ديناميكيًا . نظرًا لأنك جعلت المحتوى الخاص بك قابلاً للربط العميق بالفعل ، يمكن أن تكون معلمة link ببساطة عنوان URL للصفحة التي توجد بها.

إليك ما قد يبدو عليه هذا الارتباط:

<a href="https://example.page.link/?link=https://www.example.com/content?item%3D1234&apn=com.example.android&ibi=com.example.ios">Open this page in our app!</a>

عندما يفتح المستخدمون هذا الرابط على أجهزتهم ، إذا لم يتم تثبيت التطبيق المحدد بواسطة معلمة apn (على Android) أو معلمة ibi (على iOS) ، يتم نقل المستخدمين إلى Play Store أو App Store لتثبيت التطبيق. بعد ذلك ، يفتح التطبيق ، ويتم تمرير عنوان URL المحدد في معلمة link إليه.

افتح المحتوى المرتبط في تطبيقك

بعد ذلك ، تحتاج إلى تلقي الرابط الذي تم تمريره إلى تطبيقك وفتح المحتوى المرتبط ، وهو أمر سهل باستخدام Dynamic Links SDK:

iOS

على نظام iOS ، تتلقى الرابط الديناميكي من خلال تنفيذ application:continueUserActivity:restorationHandler: method. في معالج الاستعادة ، يمكنك الحصول على الرابط الديناميكي عن طريق استدعاء handleUniversalLink:completion: إذا تم تمرير رابط ديناميكي إلى تطبيقك ، فيمكنك الحصول عليه من خاصية url الخاصة بـ FIRDynamicLink . فمثلا:

ج موضوعية

ملاحظة: لا يتوفر منتج Firebase هذا على أهداف macOS أو Mac Catalyst أو tvOS أو watchOS.
[[FIRDynamicLinks dynamicLinks]
    handleUniversalLink:userActivity.webpageURL
             completion:^(FIRDynamicLink * _Nullable dynamicLink,
                          NSError * _Nullable error) {
      NSString *link = dynamicLink.url;
    }];

سويفت

ملاحظة: لا يتوفر منتج Firebase هذا على أهداف macOS أو Mac Catalyst أو tvOS أو watchOS.
FIRDynamicLinks.dynamicLinks()?.handleUniversalLink(userActivity.webpageURL!) { (dynamiclink, error) in
    let link = dynamiclink.url
}

بالإضافة إلى ذلك ، يجب عليك استدعاء dynamicLinkFromCustomSchemeURL: في application:openURL:options: طريقة لتلقي الروابط الديناميكية التي تم تمريرها إلى تطبيقك كعناوين URL للمخطط المخصص. فمثلا:

ج موضوعية

ملاحظة: لا يتوفر منتج Firebase هذا على أهداف macOS أو Mac Catalyst أو tvOS أو watchOS.
FIRDynamicLink *dynamicLink = [[FIRDynamicLinks dynamicLinks] dynamicLinkFromCustomSchemeURL:url];
if (dynamicLink) {
  NSString *link = dynamicLink.url;
  // ...
  return YES;
}

سويفت

ملاحظة: لا يتوفر منتج Firebase هذا على أهداف macOS أو Mac Catalyst أو tvOS أو watchOS.
let dynamicLink = FIRDynamicLinks.dynamicLinks()?.dynamicLinkFromCustomSchemeURL(url)
if let dynamicLink = dynamicLink {
  let link = dynamiclink.url
  // ...
  return true
}

الآن بعد أن أصبحت لديك قيمة معلمة link ، اعرض المحتوى المرتبط للمستخدم الخاص بك.

ذكري المظهر

في نظام Android ، يمكنك استخدام طريقة getDynamicLink() للحصول على البيانات من الرابط الديناميكي:

Java

FirebaseDynamicLinks.getInstance()
        .getDynamicLink(getIntent())
        .addOnCompleteListener(new OnCompleteListener<PendingDynamicLinkData>() {
            @Override
            public void onComplete(@NonNull Task<PendingDynamicLinkData> task) {
                if (!task.isSuccessful()) {
                    // Handle error
                    // ...
                }

                FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(task.getResult());
                if (invite != null) {
                    // Handle invite
                    // ...
                }
            }
        });

Kotlin+KTX

Firebase.dynamicLinks
        .getDynamicLink(intent)
        .addOnCompleteListener { task ->
            if (!task.isSuccessful) {
                // Handle error
                // ...
            }

            val invite = FirebaseAppInvite.getInvitation(task.result)
            if (invite != null) {
                // Handle invite
                // ...
            }
        }

الآن بعد أن أصبحت لديك قيمة معلمة link ، اعرض المحتوى المرتبط للمستخدم الخاص بك.