Derin bağlantılar, kullanıcıları bir oyunda belirli bir yere göndermenizi sağlar; bu, katılma sürecini daha sorunsuz hale getirebilir, kullanıcıların arkadaşlarını bulmalarına yardımcı olabilir ve trafik atıfı sağlar. Bu bağlantılardaki isteğe bağlı başlatma verisi, birisi katıldığında kullanıcı deneyimini özelleştirmenize olanak tanır.
Derin bağlantı oluşturma
Bir derin bağlantı URL'si, belirttiğiniz parametrelerle birlikte bir URL formatından oluşur. Aşağıdaki bölümler, her formatı nasıl oluşturacağınızı açıklar.
URL parametreleri
Derin bağlantılar aşağıdaki URL parametrelerini destekler. Diğer bir şekilde belirtilmediği sürece tümü isteğe bağlıdır.
| Parametre | Açıklama |
|---|---|
| placeId | Katılmak için yer ID'si. userId belirtilmedikçe gereklidir. |
| userId | Katılmak için kullanıcı ID'si. Kullanıcının oyundan çıktığı veya çevrimdışı olduğu durumlarda "Takip edilen kullanıcı oyundan ayrıldı" hatasına neden olur. |
| accessCode | Özel sunucu erişim kodu. |
| linkCode | Özel sunucu bağlantı kodu. |
| gameInstanceId | Katılmak için oyunun örneğine ait benzersiz tanımlayıcı, ayrıca DataModel.JobId olarak da adlandırılır. |
| launchData | Derin bağlantıya dahil etmek istediğiniz ek bilgiler, örneğin promosyon kodları veya koordinatlar. Player:GetJoinData() metodu ile işlenir. Başlatma verisini dahil et bölümüne bakın. |
Gereksinimler ve yönergeler
- Özel karakterleri, örneğin boşlukları URL kodlamalısınız. Bu karakterler, kullanıcı oyununuza katıldığında otomatik olarak çözülür.
- Çözülmüş başlatma verisi 200 baytı geçemez.
- Daha karmaşık verileri bir JSON dizesi olarak saklayabilir ve sunucuda HttpService:JSONDecode() ile çözebilirsiniz.
- launchData parametresinde gizli bilgi göndermeyin; URL'de tamamen görünür. Ayrıca, kullanıcılar URL'yi değiştirebilir, bu nedenle veriler otantik olmayabilir.
Web listesinden uygulamaya
Bu format, kullanıcıları web üzerinde Roblox oyun sayfasına gönderir ve ardından Roblox uygulamasını başlatır. Sağlanan örnek, bir yer ID'si ve URL kodlu bir başlatma verisi dizesi sağlamaktadır.
| Format | https://www.roblox.com/games/start?placeId=<id>&launchData=<string> |
| Örnek | Örnek Bağlantı |
Uygulamaya doğrudan
Bu format, kullanıcıları doğrudan Roblox uygulamasına gönderir. Sağlanan örnek, bir yer ID'si ve URL kodlu bir başlatma verisi dizesi sağlamaktadır.
| Format | roblox://placeId=<id>&launchData=<string> |
| Örnek | Örnek Bağlantı |
Ertelenmiş
Roblox'un mobil cihazlarında yüklü olmayan kullanıcılar için, kullanıcılara Roblox uygulamasını indirmeleri ve ardından derin bağlantıyı takip etmeleri için AppsFlyer versiyonunu kullanın. Bu tür bir derin bağlantı oluşturmak için, https://ro.blox.com/Ebh5? öneki belirtilmelidir. "Uygulamaya doğrudan" derin bağlantıyı af_dp parametresi ile ve "web listesinden uygulamaya" derin bağlantıyı af_web_dp parametresi ile sağlayın; bunlar önceki bölümlerde açıklanmıştır.
| Format | ro.blox.com/Ebh5?af_dp=<direct_to_app_link>&af_web_dp=<web_listing_to_app_link> |
| Örnek | 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 |
Derin bağlantıyı işleme
Oyununuza, Player:GetJoinData() metodunu kullanarak başlatma verisini elde edin; bu, sözlük döndürür. O sözlükte, LaunchData anahtarı, derin bağlantınızdaki launchData parametresinde belirttiğiniz dizeyi içerir.
Başlatma verisini işlemek için kod örnekleri için Player:GetJoinData() referans belgelerine bakın.