تتيح لك الروابط العميقة إرسال المستخدمين إلى مكان معين في لعبة، مما يمكن أن يجعل عملية الانضمام أكثر سلاسة، ويساعد المستخدمين على العثور على أصدقائهم، ويوفر تتبع الحركة. بيانات الإطلاق الاختيارية في هذه الروابط تتيح لك تخصيص تجربة المستخدم عند انضمام شخص ما.
بناء رابط عميق
يتكون عنوان URL للرابط العميق من تنسيق عنوان URL إلى جانب المعلمات التي تحددها. تصف الأقسام التالية كيفية بناء كل تنسيق.
معلمات URL
تدعم الروابط العميقة المعلمات التالية لعنوان URL. جميعها اختيارية ما لم يُذكر خلاف ذلك.
| Parameter | Description |
|---|---|
| placeId | تعريف المكان للانضمام إليه. مطلوب ما لم يتم تحديد userId. |
| userId | تعريف المستخدم للانضمام إليه. يؤدي إلى ظهور خطأ "المستخدم المتابع غادر اللعبة" إذا غادر المستخدم اللعبة أو كان غير متصل. |
| accessCode | رمز وصول الخادم الخاص. |
| linkCode | رمز رابط الخادم الخاص. |
| gameInstanceId | المعرف الفريد لنسخة اللعبة للانضمام إليها، والذي يُطلق عليه أيضًا DataModel.JobId. |
| launchData | معلومات إضافية تريد تضمينها في الرابط العميق، مثل رموز الترويج أو الإحداثيات. تتم معالجتها باستخدام طريقة Player:GetJoinData(). انظر تضمين بيانات الإطلاق. |
المتطلبات والإرشادات
- يجب عليك ترميز URL للأحرف الخاصة، مثل المسافات. يتم فك تشفير هذه الأحرف تلقائيًا عند انضمام المستخدم إلى لعبتك.
- لا يمكن أن يزيد حجم بيانات الإطلاق المفكوك عن 200 بايت.
- يمكنك تخزين بيانات أكثر تعقيدًا كسلسلة JSON وفك تشفيرها باستخدام HttpService:JSONDecode() على الخادم.
- لا ترسل معلومات سرية في معلمة launchData؛ فهي مرئية بالكامل في عنوان URL. علاوة على ذلك، يمكن للمستخدمين تعديل عنوان URL، لذا قد لا تكون البيانات أصلية.
قائمة الويب إلى التطبيق
يقوم هذا التنسيق بإرسال المستخدمين إلى صفحة لعبة Roblox على الويب ثم يبدأ تطبيق Roblox. توفر المثال المقدم تعريف مكان ورمز بيانات بدء مشفر في عنوان URL.
| التنسيق | https://www.roblox.com/games/start?placeId=<id>&launchData=<string> |
| مثال | رابط المثال |
مباشر إلى التطبيق
يقوم هذا التنسيق بإرسال المستخدمين مباشرةً إلى تطبيق Roblox. يوفر المثال المقدم تعريف مكان ورمز بيانات بدء مشفر في عنوان URL.
| التنسيق | roblox://placeId=<id>&launchData=<string> |
| مثال | رابط المثال |
مؤجل
لمستخدمي الأجهزة المحمولة الذين ليس لديهم Roblox مثبتًا، استخدم إصدار AppsFlyer من الرابط العميق للسماح للمستخدمين بتحميل تطبيق Roblox ثم اتباع الرابط العميق. لبناء نوع هذا الرابط العميق، حدد بادئة https://ro.blox.com/Ebh5?. قدم "الرابط المباشر إلى التطبيق" مع معلمة af_dp و"الرابط من الويب إلى التطبيق" مع معلمة af_web_dp، والتي تم وصفها في الأقسام السابقة.
| التنسيق | ro.blox.com/Ebh5?af_dp=<direct_to_app_link>&af_web_dp=<web_listing_to_app_link> |
| مثال | ro.blox.com/Ebh5?af_dp=roblox%3A%2F%2FplaceId%3D6900305353%26launchData%3D%257B%2522roomId%2522%253A%25202%257D&af_web_dp=https%3A%2F%2Fwww.roblox.com%2Fgames%2Fstart%3FplaceId%3D6900305353%26launchData%3D%257B%2522roomId%2522%253A%25202%257D |
معالجة رابط عميق
في لعبتك، احصل على بيانات الإطلاق باستخدام طريقة Player:GetJoinData() التي ترجع قاموسًا. في ذلك القاموس، تحتوي مفتاح LaunchData على السلسلة التي حددتها في معلمة launchData في رابطك العميق.
اطلع على الوثائق المرجعية لـ Player:GetJoinData() للحصول على أمثلة على الكود حول كيفية معالجة بيانات الإطلاق.