Catch up on highlights from Firebase at Google I/O 2023. Learn more

إنشاء روابط ديناميكية مع الوحدة

يمكنك إنشاء روابط ديناميكية قصيرة أو طويلة باستخدام Firebase Dynamic Links API. تأخذ API العديد من هياكل المعلمات الاختيارية لبناء الروابط. يمكن أيضًا إنشاء روابط قصيرة من رابط طويل تم إنشاؤه مسبقًا. ستنشئ واجهة برمجة تطبيقات الروابط الديناميكية عنوان URL مثل ما يلي:

https://example.page.link/aSDf

قبل ان تبدأ

قبل أن تتمكن من استخدام روابط Firebase الديناميكية ، تحتاج إلى:

  • سجل مشروع Unity الخاص بك وقم بتكوينه لاستخدام Firebase.

    • إذا كان مشروع Unity الخاص بك يستخدم Firebase بالفعل ، فهذا يعني أنه تم تسجيله بالفعل وتهيئته لـ Firebase.

    • إذا لم يكن لديك مشروع Unity ، فيمكنك تنزيل نموذج للتطبيق .

  • أضف Firebase Unity SDK (على وجه التحديد ، FirebaseDynamicLinks.unitypackage ) إلى مشروع Unity الخاص بك.

لاحظ أن إضافة Firebase إلى مشروع Unity الخاص بك يتضمن مهامًا في كل من وحدة تحكم Firebase وفي مشروع Unity المفتوح (على سبيل المثال ، يمكنك تنزيل ملفات تهيئة Firebase من وحدة التحكم ، ثم نقلها إلى مشروع الوحدة الخاص بك).

قم بتعيين بادئة URI للروابط الديناميكية

  1. في وحدة تحكم Firebase ، افتح قسم الروابط الديناميكية .

  2. إذا لم تكن قد وافقت بالفعل على شروط الخدمة وقمت بتعيين بادئة URI للارتباطات الديناميكية الخاصة بك ، فقم بذلك عندما يُطلب منك ذلك.

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

  3. موصى به : حدد أنماط عناوين URL المسموح بها في روابطك الداخلية والروابط الاحتياطية. من خلال القيام بذلك ، فإنك تمنع الأطراف غير المصرح لها من إنشاء روابط ديناميكية تعيد التوجيه من نطاقك إلى مواقع لا تتحكم فيها. راجع أنماط القائمة البيضاء لعناوين URL .

استخدم وحدة تحكم Firebase

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

المجالات المخصصة

يمكنك التحكم بشكل أكبر في العلامة التجارية للرابط الديناميكي الخاص بك عن طريق استخدام المجال الخاص بك بدلاً من goo.gl أو page.link الفرعي. اتبع هذه التعليمات لإعداد مجال خاص لمشروعك.

استخدام Firebase Dynamic Links API

إنشاء ارتباط ديناميكي طويل من المعلمات

لإنشاء ارتباط ديناميكي ، قم بإنشاء كائن DynamicLinkComponents ، وقم بتعيين أي من الأعضاء الاختياريين لتكوين إضافي ، ثم قم بالوصول إلى خاصية LongDynamicLink للحصول على عنوان URL للرابط.

يُنشئ المثال الأدنى التالي رابطًا ديناميكيًا طويلاً إلى https://www.example.com/ يفتح مع تطبيق Android الخاص بك com.example.android على Android وتطبيق com.example.ios على iOS:

var components = new Firebase.DynamicLinks.DynamicLinkComponents(
    // The base Link.
    new System.Uri("https://www.example.com/"),
    // The dynamic link URI prefix.
    "https://example.page.link") {
      IOSParameters = new Firebase.DynamicLinks.IOSParameters("com.example.ios"),
      AndroidParameters = new Firebase.DynamicLinks.AndroidParameters(
        "com.example.android.package_name"),
    };
// do something with: components.LongDynamicLink

إنشاء ارتباط ديناميكي قصير

لإنشاء ارتباط ديناميكي قصير ، قم بتمرير رابط طويل تم إنشاؤه مسبقًا إلى Firebase.DynamicLinks.GetShortLinkAsync أو قم ببناء DynamicLinkComponents بنفس الطريقة الموضحة أعلاه.

يأخذ GetShortLinkAsync اختياريًا معلمة تكوين DynamicLinkOptions إضافية مع خاصية PathLength ، مما يسمح لك بالتحكم في كيفية إنشاء الارتباط. يتطلب إنشاء الارتباط القصير طلب شبكة إلى الواجهة الخلفية لـ Firebase ، لذلك يتم تنفيذ أسلوب GetShortLinkAsync بشكل غير متزامن. يقوم GetShortLinkAsync بإرجاع Task<Firebase.DynamicLinks.ShortDynamicLink> .

على سبيل المثال:

var options = new Firebase.DynamicLinks.DynamicLinkOptions {
  PathLength = DynamicLinkPathLength.Unguessable
};

Firebase.DynamicLinks.DynamicLinks.GetShortLinkAsync(components, options).ContinueWith(task => {
  if (task.IsCanceled) {
    Debug.LogError("GetShortLinkAsync was canceled.");
    return;
  }
  if (task.IsFaulted) {
    Debug.LogError("GetShortLinkAsync encountered an error: " + task.Exception);
    return;
  }

  // Short Link has been created.
  Firebase.DynamicLinks.ShortDynamicLink link = task.Result;
  Debug.LogFormat("Generated short link {0}", link.Url);

  var warnings = new System.Collections.Generic.List<string>(link.Warnings);
  if (warnings.Count > 0) {
    // Debug logging for warnings generating the short link.
  }
});

يستخدم المثال أعلاه تعبير lambda الذي يتم تشغيله عند اكتمال المهمة.