สร้างลิงก์แบบไดนามิกบน iOS

คุณสามารถสร้าง Dynamic Links แบบสั้นหรือแบบยาวได้ด้วย Firebase Dynamic Links Builder API API นี้ยอมรับ Dynamic Link แบบยาวหรือออบเจ็กต์ที่มี Dynamic Link และแสดง URL เหมือนตัวอย่างต่อไปนี้

https://example.com/link/WXYZ
https://example.page.link/WXYZ

ข้อกำหนดเบื้องต้น

ก่อนเริ่มต้น ให้เพิ่ม Firebase ลงใน iOS โปรเจ็กต์

ใช้ Swift Package Manager เพื่อติดตั้งและจัดการทรัพยากร Dependency ของ Firebase

  1. เปิดโปรเจ็กต์แอปใน Xcode แล้วไปที่ไฟล์ > เพิ่มแพ็กเกจ
  2. เมื่อได้รับข้อความแจ้ง ให้เพิ่มที่เก็บ SDK สำหรับแพลตฟอร์ม Firebase ของ Apple ดังนี้
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. เลือกไลบรารี Dynamic Links
  5. เพิ่มแฟล็ก -ObjC ลงในส่วนแฟล็ก Linker อื่นๆ ของการตั้งค่าบิลด์ของเป้าหมาย
  6. เราขอแนะนำเพื่อประสบการณ์การใช้งาน Dynamic Links ที่ดีที่สุด กำลังเปิดใช้ Google Analytics ในโปรเจ็กต์ Firebase และเพิ่ม Firebase SDK สำหรับ Google Analytics ลงในแอป คุณสามารถ ให้เลือกไลบรารีที่ไม่มีการรวบรวม IDFA หรือมีคอลเล็กชัน IDFA
  7. เมื่อเสร็จแล้ว Xcode จะเริ่มแก้ปัญหาและดาวน์โหลด ทรัพยากร Dependency ในเบื้องหลัง

โดยทำตามขั้นตอนการกำหนดค่าต่อไปนี้

  1. ในคอนโซล Firebase ให้เปิดส่วน Dynamic Links
  2. หากคุณยังไม่ได้ยอมรับข้อกำหนดในการให้บริการและตั้งค่าคำนำหน้า URI สำหรับ Dynamic Links ให้ดำเนินการเมื่อได้รับข้อความแจ้ง

    หากคุณมีคำนำหน้า URI Dynamic Links อยู่แล้ว ให้จดคำนำหน้าไว้ สิ่งที่คุณต้องทำ โปรดระบุเมื่อสร้าง Dynamic Links แบบเป็นโปรแกรม

  3. แนะนำ: ระบุรูปแบบ URL ที่อนุญาตใน Deep Link และลิงก์สำรอง การทำเช่นนี้จะเป็นการป้องกันไม่ให้บุคคลที่ไม่ได้รับอนุญาตสามารถ สร้าง Dynamic Links ที่เปลี่ยนเส้นทางจากโดเมนของคุณไปยังเว็บไซต์ที่คุณควบคุมไม่ได้ ดูอนุญาตบางรายการ รูปแบบ URL
  4. ตรวจสอบว่ารหัส App Store ของแอปและคำนำหน้ารหัสแอป ที่ระบุในการตั้งค่าแอปของคุณ หากต้องการดูและแก้ไขการตั้งค่าของแอป ให้ไปที่ ลงในโปรเจ็กต์ Firebase หน้าการตั้งค่า แล้วเลือกแอป iOS

    ยืนยันว่าได้กำหนดค่าโปรเจ็กต์ Firebase อย่างถูกต้องให้ใช้ Dynamic Links ในแอป iOS โดยเปิดแอป apple-app-site-association ไฟล์ที่โฮสต์บน Dynamic Links Firebase จะแสดง apple-app-site-association จากรูทของ และไดเรกทอรีย่อย .well-known ได้ สำหรับ ตัวอย่าง:

        https://example.com/apple-app-site-association
        https://example.com/.well-known/apple-app-site-association
        

    หากแอปของคุณเชื่อมต่ออยู่ ไฟล์ apple-app-site-association จะมีข้อมูลอ้างอิง กับคำนำหน้ารหัสแอปและรหัสชุดของแอป เช่น

    {"applinks":{"apps":[],"details":[{"appID":"1234567890.com.example.ios","paths":["/*"]}]}}

    หากพร็อพเพอร์ตี้ details ว่างเปล่า ให้ตรวจสอบอีกครั้งว่าคุณได้ระบุแล้ว คำนำหน้ารหัสแอป โปรดทราบว่าคำนำหน้ารหัสแอปอาจไม่เหมือนกับรหัสทีม

เพิ่ม Firebase ไปยังแอป

  1. นำเข้าโมดูล FirebaseCore ใน UIApplicationDelegate และอื่นๆ โมดูล Firebase ที่ผู้รับมอบสิทธิ์แอปใช้ ตัวอย่างเช่น หากต้องการใช้ Cloud Firestore และ Authentication:

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. กําหนดค่า FirebaseApp อินสแตนซ์ที่แชร์ใน เมธอด application(_:didFinishLaunchingWithOptions:):

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. หากใช้ SwiftUI คุณต้องสร้างการมอบสิทธิ์แอปพลิเคชันและแนบการมอบสิทธิ์ ไปยังโครงสร้าง App ของคุณผ่าน UIApplicationDelegateAdaptor หรือ NSApplicationDelegateAdaptor คุณต้องปิดใช้ SWizzing ที่มอบสิทธิ์ของแอปด้วย สำหรับ สำหรับข้อมูลเพิ่มเติม โปรดดูวิธีการของ SwiftUI

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          

ใช้คอนโซล Firebase

หากต้องการสร้าง Dynamic Link รายการเดียว ไม่ว่าจะเพื่อการทดสอบหรือสำหรับทีมการตลาด เพื่อสร้างลิงก์เพื่อใช้ในสิ่งต่างๆ เช่น โพสต์โซเชียลมีเดีย วิธีที่ง่ายที่สุดในการ ไปที่คอนโซล Firebase และสร้างด้วยตนเองตามแบบฟอร์มทีละขั้นตอน

ใช้ iOS Builder API

คุณสามารถใช้ iOS Builder API เพื่อสร้าง Dynamic Links จากพารามิเตอร์ หรือ ลด Dynamic Link ที่ยาว

หากต้องการสร้าง Dynamic Link ให้สร้างออบเจ็กต์ DynamicLinkComponents ใหม่ และระบุพารามิเตอร์ Dynamic Link โดยการตั้งค่าออบเจ็กต์ที่ตรงกัน พร็อพเพอร์ตี้ จากนั้นรับลิงก์แบบยาวจาก url ของออบเจ็กต์ นี้ หรือรับลิงก์แบบสั้นโดยโทรไปที่ shorten()

ตัวอย่างเล็กน้อยต่อไปนี้สร้าง Dynamic Link แบบยาวเพื่อ https://www.example.com/my-page ที่เปิดด้วยแอป iOS ของคุณบน iOS และแอป com.example.android ใน Android

Swift

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
guard let link = URL(string: "https://www.example.com/my-page") else { return }
let dynamicLinksDomainURIPrefix = "https://example.com/link"
let linkBuilder = DynamicLinkComponents(link: link, domainURIPrefix: dynamicLinksDomainURIPRefix)
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "com.example.ios")
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "com.example.android")

guard let longDynamicLink = linkBuilder.url else { return }
print("The long URL is: \(longDynamicLink)")

Objective-C

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
NSURL *link = [[NSURL alloc] initWithString:@"https://www.example.com/my-page"];
NSString *dynamicLinksDomainURIPrefix = @"https://example.com/link";
FIRDynamicLinkComponents *linkBuilder = [[FIRDynamicLinkComponents alloc]
                                         initWithLink:link
                                               domainURIPrefix:dynamicLinksDomainURIPrefix];
linkBuilder.iOSParameters = [[FIRDynamicLinkIOSParameters alloc]
                             initWithBundleID:@"com.example.ios"];
linkBuilder.androidParameters = [[FIRDynamicLinkAndroidParameters alloc]
                                 initWithPackageName:@"com.example.android"];

NSLog(@"The long URL is: %@", linkBuilder.url);

หากต้องการสร้าง Dynamic Link แบบสั้น ให้สร้าง DynamicLinkComponents รหัส ด้วยวิธีเดียวกัน แล้วโทรไปที่ shorten()

การสร้างลิงก์แบบสั้นต้องใช้การเรียกใช้เครือข่าย ดังนั้นแทนที่จะสร้างโดยตรง การส่งคืนลิงก์ shorten() จะยอมรับตัวแฮนเดิลการเสร็จสมบูรณ์ จะถูกเรียกเมื่อคำขอเสร็จสมบูรณ์ เช่น

Swift

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
linkBuilder.shorten() { url, warnings, error in
  guard let url = url, error != nil else { return }
  print("The short URL is: \(url)")
}

Objective-C

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
[linkBuilder shortenWithCompletion:^(NSURL * _Nullable shortURL,
                                     NSArray<NSString *> * _Nullable warnings,
                                     NSError * _Nullable error) {
  if (error || shortURL == nil) { return; }
  NSLog(@"The short URL is: %@", shortURL);
}];
      

โดยค่าเริ่มต้น ระบบจะสร้าง Dynamic Links แบบสั้น โดยมีคำต่อท้ายลิงก์ 17 อักขระที่ ทำให้มีแนวโน้มต่ำมากที่จะมีใครคาดเดา Dynamic Link ที่ถูกต้องได้ ถ้า สำหรับ กรณีการใช้งานของคุณ การที่ใครสักคนเดาลิงก์แบบสั้นได้สำเร็จก็ไม่เสียหายอะไร คุณอาจต้องการสร้างคำต่อท้ายที่มีความยาวเท่าที่จำเป็น ที่ไม่ซ้ำ ซึ่งคุณสามารถทำได้โดยการตั้งค่า พร็อพเพอร์ตี้ dynamicLinkComponentsOptions:

Swift

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
linkBuilder.options = DynamicLinkComponentsOptions()
linkBuilder.options.pathLength = .short
linkBuilder.shorten() { url, warnings, error in
  guard let url = url, error != nil else { return }
  print("The short URL is: \(url)")
}

Objective-C

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
linkBuilder.dynamicLinkComponentsOptions = [[FIRDynamicLinkComponentsOptions alloc] init];
linkBuilder.dynamicLinkComponentsOptions.pathLength = FIRShortDynamicLinkPathLengthShort;
[linkBuilder shortenWithCompletion:^(NSURL * _Nullable shortURL,
                                     NSArray<NSString *> * _Nullable warnings,
                                     NSError * _Nullable error) {
  if (error || shortURL == nil) { return; }
  NSLog(@"The short URL is: %@", shortURL);
}];
      

คุณสามารถใช้ Dynamic Link Builder API เพื่อสร้าง Dynamic Links ด้วย พารามิเตอร์ที่รองรับ โปรดดู ข้อมูลอ้างอิง API สำหรับรายละเอียด

ตัวอย่างต่อไปนี้สร้าง Dynamic Link ที่มีพารามิเตอร์ทั่วไปหลายรายการ ตั้งค่า:

Swift

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
guard let link = URL(string: "https://www.example.com/my-page") else { return }
let dynamicLinksDomainURIPrefix = "https://example.com/link"
let linkBuilder = DynamicLinkComponents(link: link, domainURIPRefix: dynamicLinksDomainURIPrefix)

linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "com.example.ios")
linkBuilder.iOSParameters.appStoreID = "123456789"
linkBuilder.iOSParameters.minimumAppVersion = "1.2.3"

linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "com.example.android")
linkBuilder.androidParameters.minimumVersion = 123

linkBuilder.analyticsParameters = DynamicLinkGoogleAnalyticsParameters(source: "orkut",
                                                                       medium: "social",
                                                                       campaign: "example-promo")

linkBuilder.iTunesConnectParameters = DynamicLinkItunesConnectAnalyticsParameters()
linkBuilder.iTunesConnectParameters.providerToken = "123456"
linkBuilder.iTunesConnectParameters.campaignToken = "example-promo"

linkBuilder.socialMetaTagParameters = DynamicLinkSocialMetaTagParameters()
linkBuilder.socialMetaTagParameters.title = "Example of a Dynamic Link"
linkBuilder.socialMetaTagParameters.descriptionText = "This link works whether the app is installed or not!"
linkBuilder.socialMetaTagParameters.imageURL = "https://www.example.com/my-image.jpg"

guard let longDynamicLink = linkBuilder.url else { return }
print("The long URL is: \(longDynamicLink)")

Objective-C

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
NSURL *link = [[NSURL alloc] initWithString:@"https://www.example.com/my-page"];
NSString *dynamicLinksDomainURIPrefix = @"https://example.com/link";
FIRDynamicLinkComponents *linkBuilder = [[FIRDynamicLinkComponents alloc]
                                         initWithLink:link
                                         domainURIPrefix:dynamicLinksDomainURIPrefix];

linkBuilder.iOSParameters = [[FIRDynamicLinkIOSParameters alloc]
                             initWithBundleID:@"com.example.ios"];
linkBuilder.iOSParameters.appStoreID = @"123456789";
linkBuilder.iOSParameters.minimumAppVersion = @"1.2.3";

linkBuilder.androidParameters = [[FIRDynamicLinkAndroidParameters alloc]
                                 initWithPackageName:@"com.example.android"];
linkBuilder.androidParameters.minimumVersion = 123;

linkBuilder.analyticsParameters = [[FIRDynamicLinkGoogleAnalyticsParameters alloc]
                                   initWithSource:@"orkut"
                                           medium:@"social"
                                         campaign:@"example-promo"];

linkBuilder.iTunesConnectParameters = [[FIRDynamicLinkItunesConnectAnalyticsParameters alloc] init];
linkBuilder.iTunesConnectParameters.providerToken = @"123456";
linkBuilder.iTunesConnectParameters.campaignToken = @"example-promo";

linkBuilder.socialMetaTagParameters = [[FIRDynamicLinkSocialMetaTagParameters alloc] init];
linkBuilder.socialMetaTagParameters.title = @"Example of a Dynamic Link";
linkBuilder.socialMetaTagParameters.descriptionText = @"This link works whether the app is installed or not!";
linkBuilder.socialMetaTagParameters.imageURL = @"https://www.example.com/my-image.jpg";

NSLog(@"The long URL is: %@", linkBuilder.url);

คุณตั้งค่าพารามิเตอร์ Dynamic Link ด้วยออบเจ็กต์และพร็อพเพอร์ตี้ต่อไปนี้ได้

DynamicLinkComponents
ลิงก์

ลิงก์ที่แอปของคุณจะเปิดขึ้น ระบุ URL ที่แอปสามารถจัดการได้ ซึ่งโดยทั่วไปจะเป็นเนื้อหาของแอป หรือเพย์โหลด ซึ่งเป็นการเริ่มต้นตรรกะเฉพาะแอป (เช่น ให้เครดิตผู้ใช้ด้วยคูปอง หรือ แสดงหน้าจอต้อนรับ) ลิงก์นี้ต้องเป็น URL ที่มีรูปแบบเหมาะสม มีการเข้ารหัส URL อย่างถูกต้อง ใช้ HTTP หรือ HTTPS และไม่สามารถเป็นลิงก์แบบไดนามิกอื่นได้

คำนำหน้าโดเมน URI คำนำหน้า URL Dynamic Link ซึ่งดูได้ในคอนโซล Firebase ต โดเมน Dynamic Link มีลักษณะดังตัวอย่างต่อไปนี้
https://example.com/link
https://example.page.link
DynamicLinkAndroidParameters
URL สำรอง ลิงก์ที่จะเปิดเมื่อไม่ได้ติดตั้งแอป โดยให้ระบุการดำเนินการนี้เพื่อดำเนินการอื่นที่ไม่ใช่การติดตั้งแอปจาก Play Store เมื่อไม่ได้ติดตั้งแอปดังกล่าว เช่น เปิดเนื้อหาเวอร์ชันเว็บบนอุปกรณ์เคลื่อนที่ หรือแสดงหน้าโปรโมตสำหรับแอป
เวอร์ชันขั้นต่ำ versionCode ของแอปเวอร์ชันต่ำสุดที่สามารถเปิดลิงก์ได้ หากแอปที่ติดตั้งเป็นเวอร์ชันเก่า ระบบจะนำผู้ใช้ไปที่ Play Store เพื่ออัปเกรดแอป
พารามิเตอร์ DynamicLinkIOS
รหัส App Store รหัส App Store ของแอปซึ่งใช้เพื่อส่งผู้ใช้ไปยัง App Store เมื่อไม่ได้ติดตั้งแอป
URL สำรอง ลิงก์ที่จะเปิดเมื่อไม่ได้ติดตั้งแอป ระบุสิ่งนี้เพื่อดำเนินการอื่นนอกเหนือจากการติดตั้งแอปจาก App Store เมื่อไม่มีการติดตั้งแอป เช่น เปิดเนื้อหาเวอร์ชันเว็บบนอุปกรณ์เคลื่อนที่ หรือแสดงหน้าโปรโมตสำหรับแอป
รูปแบบที่กำหนดเอง ชุดรูปแบบ URL ที่กำหนดเองของแอป หากกำหนดให้เป็นรูปแบบอื่นที่ไม่ใช่รหัสชุดของแอป
URL ทางเลือกสำหรับ iPad ลิงก์ที่จะเปิดใน iPad เมื่อไม่ได้ติดตั้งแอป ระบุสิ่งนี้เพื่อดำเนินการอื่นนอกเหนือจากการติดตั้งแอปจาก App Store เมื่อไม่มีการติดตั้งแอป เช่น เปิดเนื้อหาเวอร์ชันเว็บ หรือแสดงหน้าโปรโมชันสำหรับแอป
รหัสแพ็กเกจ iPad รหัสชุดของแอป iOS ที่จะใช้ใน iPad เพื่อเปิดลิงก์ แอปต้องเชื่อมต่อกับโปรเจ็กต์จากหน้าภาพรวมของคอนโซล Firebase
เวอร์ชันแอปขั้นต่ำ หมายเลขเวอร์ชันของแอปเวอร์ชันขั้นต่ำที่สามารถเปิดลิงก์ได้ ระบบจะส่งแฟล็กนี้ไปยังแอปของคุณเมื่อมีการเปิดแอป และแอปจะต้องตัดสินใจว่าจะทำอย่างไรกับการแจ้งเตือนดังกล่าว
พารามิเตอร์ลิงก์การนำทางแบบไดนามิก
forceRedirectEnabled หากตั้งค่าเป็น "1" ให้ข้ามหน้าตัวอย่างแอปเมื่อเปิด Dynamic Link และเปลี่ยนเส้นทางไปยังแอปหรือ Store แทน หน้าตัวอย่างแอป (เปิดใช้โดยค่าเริ่มต้น) จะส่งผู้ใช้ไปยังปลายทางที่เหมาะสมที่สุดได้อย่างน่าเชื่อถือมากขึ้นเมื่อเปิด Dynamic Links ในแอป อย่างไรก็ตาม หากคุณคาดว่า Dynamic Link จะเปิดเฉพาะในแอปที่สามารถเปิด Dynamic Links ได้อย่างเสถียรโดยไม่ต้องใช้หน้านี้ คุณก็ปิดใช้ด้วยพารามิเตอร์นี้ได้ พารามิเตอร์นี้จะส่งผลต่อลักษณะการทำงานของ Dynamic Link เฉพาะใน iOS เท่านั้น
พารามิเตอร์เมตาแท็กลิงก์โซเชียลแบบไดนามิก
ตำแหน่ง ชื่อที่จะใช้เมื่อมีการแชร์ Dynamic Link ในโพสต์บนโซเชียลเน็ตเวิร์ก
ข้อความคำอธิบาย คำอธิบายที่จะใช้เมื่อมีการแชร์ Dynamic Link ในโพสต์บนโซเชียลเน็ตเวิร์ก
URL รูปภาพ URL ไปยังรูปภาพที่เกี่ยวข้องกับลิงก์นี้ รูปภาพควรมีขนาดอย่างน้อย 300x200 พิกเซล และเล็กกว่า 300 KB
พารามิเตอร์ Google AnalyticsAnalytics
แหล่งที่มา
สื่อ
แคมเปญ
คำ
เนื้อหา
พารามิเตอร์ Analytics ของ Google Play พารามิเตอร์เหล่านี้ (utm_source utm_medium utm_campaign, utm_term, utm_content) จะส่งไปยัง Play Store รวมถึงเพย์โหลดลิงก์ต่อท้าย
พารามิเตอร์ DynamicLinkItunesConnectAnalytics
providerToken
affiliateToken
campaignToken
พารามิเตอร์ข้อมูลวิเคราะห์ของ iTunes Connect พารามิเตอร์เหล่านี้ (pt, at, ct) จะส่งไปยัง App Store

หากต้องการตัด Dynamic Link ที่ยาวให้สั้นลง ให้ส่ง Dynamic Link แบบยาวไปยัง shortenURL(url:options:) พร้อมด้วย DynamicLinkComponentsOptionsหากคุณต้องการสร้าง ลิงก์ที่มีคำต่อท้ายสั้น:

Swift

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
DynamicLinkComponents.shortenURL(url: longLinkUrl, options: nil) { url, warnings, error in
  guard let url = url, error != nil else { return }
  print("The short URL is: \(url)")
}

Objective-C

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
[FIRDynamicLinkComponents shortenURL:longLinkUrl
                             options:nil
                          completion:^(NSURL * _Nullable shortURL,
                                       NSArray<NSString *> * _Nullable warnings,
                                       NSError * _Nullable error) {
  if (error || shortURL == nil) { return; }
  NSLog(@"The short URL is: %@", shortURL);
}];

โดยค่าเริ่มต้น Dynamic Links จะใช้ตัวระบุชุดแอปของคุณเป็นรูปแบบ URL ที่จำเป็นในการเปิด แอปพลิเคชัน เราขอแนะนําให้ใช้ค่าเริ่มต้นนี้ต่อไปเพื่อให้การติดตั้งใช้งานง่ายขึ้น

อย่างไรก็ตาม นักพัฒนาซอฟต์แวร์ที่ใช้รูปแบบ URL ที่กำหนดเองสำหรับวัตถุประสงค์อื่นๆ อยู่แล้วอาจต้องการใช้ ชุดรูปแบบ URL ที่กำหนดเองเดียวกันนี้สำหรับ Dynamic Links ของตนด้วยเช่นกัน หากอยู่ในสถานการณ์นี้ คุณสามารถระบุ Scheme ของ URL อื่นสำหรับ Firebase Dynamic Links โดยทำตามขั้นตอนต่อไปนี้

  1. เมื่อตั้งค่าแอป อย่าลืมระบุรูปแบบ URL เริ่มต้นที่แอปพลิเคชันจะใช้ ก่อนกำหนดค่าอินสแตนซ์ที่แชร์ของ FirebaseApp ให้ทำดังนี้

    Swift

    หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
    func application(_ application: UIApplication,
                     didFinishLaunchingWithOptions launchOptions: [UIApplication
                       .LaunchOptionsKey: Any]?) -> Bool {
      // Set deepLinkURLScheme to the custom URL scheme you defined in your
      // Xcode project.
      FirebaseOptions.defaultOptions()?.deepLinkURLScheme = customURLScheme
      FirebaseApp.configure()
    
      return true
    }

    Objective-C

    หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ใช้ไม่ได้กับเป้าหมาย macOS, Mac Catalyst, tvOS หรือ watchOS
    - (BOOL)application:(UIApplication *)application
        didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
      // Set deepLinkURLScheme to the custom URL scheme you defined in your
      // Xcode project.
      [FIROptions defaultOptions].deepLinkURLScheme = CUSTOM_URL_SCHEME;
      [FIRApp configure];
    
      return YES;
    }
  2. เมื่อใดก็ตามที่คุณสร้าง Dynamic Link คุณจะต้องระบุรูปแบบ URL ที่กำหนดเองที่ การใช้งานแอป วิธีการคือผ่านคอนโซล Firebase โดยตั้งค่า customScheme ใน Builder API การระบุพารามิเตอร์ ius ใน URL ของคุณ หรือส่งพารามิเตอร์ iosCustomScheme ไปยัง API ของ REST

ขั้นตอนถัดไป

ตอนนี้คุณสร้าง Dynamic Links แล้ว คุณจะต้องตั้งค่าแอปเพื่อรับ Dynamic Linksและส่งผู้ใช้ไปยังตำแหน่งที่ถูกต้องในแอปของคุณหลังจากผู้ใช้เปิดแอป

หากต้องการรับ Dynamic Links ในแอปของคุณ โปรดดูเอกสารประกอบสำหรับ iOS Android C++ และ Unity