Firebase Dynamic Links Builder API ile kısa veya uzun Dinamik Bağlantılar oluşturabilirsiniz. Bu API, uzun bir Dinamik Bağlantı ya da Dinamik Bağlantı içeren bir nesne kabul eder parametrelerini döndürür ve aşağıdaki örneklere benzer URL'leri döndürür:
https://example.com/link/WXYZ
https://example.page.link/WXYZ
Firebase ve Dynamic Links SDK'sını ayarlar
Android uygulamanızda Dinamik Bağlantılar oluşturabilmeniz için Firebase SDK'sı. Uygulamanız Dynamic Links alacak şekilde ayarlandıysa: adımları tamamladıysanız bu bölümü atlayabilirsiniz.
Aşağıdaki şartları karşılıyorsanız Flutter için Firebase SDK'larını yükleyip başlatın bunu yapmıyoruz.
Flutter projenizin kök dizininden aşağıdaki kodu çalıştırın: komutunu çalıştırın:
flutter pub add firebase_dynamic_links
Android uygulaması oluşturuyorsanız Proje ayarları'nı açın sayfasını açın ve SHA-1'inizi belirttiğinizden emin olun imzalayın. App Links kullanıyorsanız SHA-256 anahtarınızı da belirtin.
Firebase konsolunda Dinamik Bağlantılar'ı açın. bölümüne bakın.
Dinamik Bağlantılarınız için henüz bir alan adı oluşturmadıysanız Başlayın düğmesini tıklayın ve istemleri uygulayın.
Zaten bir Dynamic Links alan adınız varsa bunu not edin. Şunları yapmanız gerekir: programlı bir şekilde Dinamik Bağlantılar oluşturduğunuzda bir Dynamic Links alan adı sağlar.
Önerilen: "Diğer" bölümünden (⋮) menüsünü kullanarak URL'yi belirtin derin bağlantılarınızda ve yedek bağlantılarınızda izin verilen kalıplar. Böylece, yetkisiz tarafların yönlendirme yapan Dinamik Bağlantılar oluşturmasını önlersiniz kontrol etmediğiniz sitelere gönderebilir.
Belirli URL kalıplarına izin verme bölümüne bakın.
Parametrelerden Dinamik Bağlantı oluşturma
Dinamik Bağlantı oluşturmak için yeni bir DynamicLinkParameters
nesnesi oluşturun ve bunu şuraya iletin:
buildLink()
veya buildShortLink()
.
Aşağıdaki minimum örnek, her bir URL için uzun bir
Android'de com.example.app.android
ile açılan https://www.example.com/
ve iOS'te com.example.app.ios
uygulaması:
final dynamicLinkParams = DynamicLinkParameters(
link: Uri.parse("https://www.example.com/"),
uriPrefix: "https://example.page.link",
androidParameters: const AndroidParameters(packageName: "com.example.app.android"),
iosParameters: const IOSParameters(bundleId: "com.example.app.ios"),
);
final dynamicLink =
await FirebaseDynamicLinks.instance.buildLink(dynamicLinkParams);
Kısa bir Dinamik Bağlantı oluşturmak için DynamicLinkParameters
nesnesini
buildShortLink()
. Kısa bağlantıyı oluşturmak için ağ çağrısı gerekir.
Örneğin:
final dynamicLinkParams = DynamicLinkParameters(
link: Uri.parse("https://www.example.com/"),
uriPrefix: "https://example.page.link",
androidParameters: const AndroidParameters(packageName: "com.example.app.android"),
iosParameters: const IOSParameters(bundleId: "com.example.app.ios"),
);
final dynamicLink =
await FirebaseDynamicLinks.instance.buildShortLink(dynamicLinkParams);
Varsayılan olarak, kısa Dynamic Links'in oluşturulmasında yalnızca birkaç uzunluğunda olmalıdır. Bu yöntem, bağlantıları daha kompakt hale getirse de geçerli bir kısa bağlantıyı tahmin etmek çok önemlidir. Çoğu zaman bağlantı herkese açık bilgilere yönlendirdiğinden, başkalarına zarar verebilir.
Ancak, kısa bağlantılarınız kullanıcıya özel bilgilere yönlendiriyorsa
17 karakterlik soneklere sahip daha uzun bağlantılar oluşturun. Bu,
geçerli bir Dinamik Bağlantı tahmin edebilir. Bunu yapmak için ShortDynamicLinkType.unguessable
hesabını geçin.
buildShortLink()
yöntemine:
final unguessableDynamicLink = await FirebaseDynamicLinks.instance.buildShortLink(
dynamicLinkParams,
shortLinkType: ShortDynamicLinkType.unguessable,
);
Dinamik Bağlantı parametreleri
önerilen parametrelerdir. API referansını inceleyin.
Aşağıdaki örnekte birkaç yaygın parametre ile bir Dinamik Bağlantı oluşturma grup:
final dynamicLinkParams = DynamicLinkParameters(
link: Uri.parse("https://www.example.com/"),
uriPrefix: "https://example.page.link",
androidParameters: const AndroidParameters(
packageName: "com.example.app.android",
minimumVersion: 30,
),
iosParameters: const IOSParameters(
bundleId: "com.example.app.ios",
appStoreId: "123456789",
minimumVersion: "1.0.1",
),
googleAnalyticsParameters: const GoogleAnalyticsParameters(
source: "twitter",
medium: "social",
campaign: "example-promo",
),
socialMetaTagParameters: SocialMetaTagParameters(
title: "Example of a Dynamic Link",
imageUrl: Uri.parse("https://example.com/image.png"),
),
);
final dynamicLink =
await FirebaseDynamicLinks.instance.buildShortLink(dynamicLinkParams);
Dinamik Bağlantı parametrelerini aşağıdaki yöntemlerle ayarlayabilirsiniz:
DynamicLink parametreleri | |
---|---|
setLink | Uygulamanızın açacağı bağlantı. Uygulamanızın işleyebileceği bir URL belirtin, genellikle uygulamanın içeriğini veya yükünü kullanır. Bu durum, (kullanıcıya bir kuponla kredi verilmesi veya kullanıcıya bir kupon gösterilmesi karşılama ekranı) ekleyebilirsiniz. Bu bağlantı, iyi biçimlendirilmiş bir URL olmalıdır. URL kodlamalı, HTTP ya da HTTPS kullanmalı ve başka bir Dinamik Bağlantı. |
setDomainUriPrefix | Firebase konsolunda bulabileceğiniz Dinamik Bağlantı URL'si ön ekiniz. CEVAP
Dinamik Bağlantı alanı aşağıdaki örneklere benzer:
https://example.com/link https://example.page.link |
AndroidParametreleri | |
---|---|
setFallbackUrl | Uygulama yüklenmediğinde açılacak bağlantı. Bunu yapmak için bunu belirtin uygulamayı indirdikten sonra uygulamanızı Play Store'dan yüklü değilse (örneğin, içeriğin mobil web sürümünü açın) veya uygulamanız için bir tanıtım sayfası gösterebilir. |
MinimumSürüm ayarla | Uygulamanızın bağlantısını tıklayın. Yüklü uygulamanın sürümü eskiyse kullanıcı şuraya yönlendirilir: uygulamayı yeni sürüme geçirmek için Play Store'a gidin. |
IosParameters | |
---|---|
setAppStoreId | Aşağıdaki durumlarda kullanıcıları App Store'a göndermek için kullanılan, uygulamanızın App Store Kimliği uygulama yüklü değil |
setFallbackUrl | Uygulama yüklenmediğinde açılacak bağlantı. Bunu yapmak için bunu belirtin uygulamayı indirdikten sonra uygulamanızı App Store'dan yüklü değilse (örneğin, içeriğin mobil web sürümünü açın) veya uygulamanız için bir tanıtım sayfası gösterebilir. |
setCustomScheme | Uygulamanızın özel URL şeması, uygulamanızın paket kimliği |
setIpadFallbackUrl | Uygulama yüklü olmadığında iPad'lerde açılacak bağlantı. Bunu şu şekilde belirtin: başka bir şey yaptığınızda, uygulamasının yüklü olmaması (ör. içeriğin web sürümünü açma) veya uygulamanız için bir tanıtım sayfası gösterebilir. |
setIpadBundleId | Bağlantıyı açmak için iPad'lerde kullanılacak iOS uygulamasının paket kimliği. Uygulama Projenize, projenizin Genel Bakış sayfasından bağlı olmalıdır. Firebase konsolu. |
MinimumSürüm ayarla | Uygulamanızın bağlantısını tıklayın. Bu işaret, açıldığında uygulamanıza aktarılır ve ne yapacağına karar vermesi gerekir. |
NavigationInfoParameters | |
---|---|
setForcedRedirectEnabled | "1" olarak ayarlanırsa Dinamik Bağlantı etkinken uygulama önizleme sayfasını atlayın bunun yerine uygulamaya veya mağazaya yönlendirir. Uygulama önizleme sayfası (varsayılan olarak etkin), kullanıcıları en doğru uygulamalarda Dinamik Bağlantıları açtıklarında uygun hedef; ancak, Bir Dinamik Bağlantının yalnızca açılabilen uygulamalarda açılmasını bekliyorsanız Dynamic Links, bu sayfa olmadan güvenilir bir şekilde parametresinden sonra bir değer girin. Bu parametre, Dinamik Bağlantının davranışını etkiler yalnızca iOS'te kullanılabilir. |
SocialMetaTagParameters | |
---|---|
setTitle | Dinamik Bağlantı, bir sosyal medya yayınında paylaşıldığında kullanılacak başlık. |
setDescription | Dinamik Bağlantı, bir sosyal medya yayınında paylaşıldığında kullanılacak açıklama. |
kümeResmi URL'si | Bu bağlantıyla ilgili bir resmin URL'si. Resim en az olmalıdır 300x200 piksel ve 300 KB'tan küçük. |
GoogleAnalyticsParameters | |
---|---|
setSource setMedium setCampaign setTerm setContent |
Google Play Analytics parametreleri. Bu parametreler (`utm_source`, `utm_medium`, `utm_campaign`, `utm_term`, `utm_content`) Play Store'a aktarılır ve bağlantı yüküne eklenir. |
ItunesConnectAnalyticsParameters | |
---|---|
setProviderToken setAffiliateToken setCampaignToken |
iTunes Connect analiz parametreleri. Bu parametreler ("pt", `at`, `ct`) App Store'a iletilir. |