Firebase Dynamic Links: คืออะไร การสร้างลิงก์และการรวม

ผู้แต่ง: IT Sectr เผยแพร่เมื่อ: 2026-04-29 เวลาอ่าน: 9 นาที

Firebase Dynamic Links คือบริการของ Google สำหรับสร้างลิงก์อัจฉริยะที่นำผู้ใช้ไปยังตำแหน่งที่ถูกต้องภายในแอปมือถือหรือเว็บไซต์ ขึ้นอยู่กับว่าแอปได้รับการติดตั้งบนอุปกรณ์หรือไม่ Dynamic Links จะรักษาบริบทการเปลี่ยนผ่านแม้ในครั้งแรกที่เปิดใช้หลังจากการติดตั้งจากร้านค้าแอป ตาม เอกสาร Firebase, 2026 ลิงก์ไดนามิก จะถูกประมวลผลใน API เดียวที่กำหนดลักษณะการทำงานโดยอัตโนมัติ: เปิดแอป ไปที่เว็บไซต์ หรือติดตั้งแอป บริการนี้ขาดไม่ได้สำหรับโปรแกรมอ้างอิง สถานการณ์การเริ่มต้นใช้งาน และแคมเปญการตลาด

ประเด็นสำคัญ

  • Dynamic Links — ลิงก์อัจฉริยะที่กำหนดโดยอัตโนมัติว่าควรติดตั้งแอปหรือเปิดแอปที่ติดตั้งแล้วบนหน้าจอที่ต้องการ
  • Deferred Deep Linking — การรักษาบริบทการเปลี่ยนผ่านเมื่อเปิดครั้งแรกหลังการติดตั้ง: ผู้ใช้เห็นหน้าจอเป้าหมาย ไม่ใช่หน้าจอหลัก
  • โดเมนลิงก์ — โดเมนที่กำหนดเองเช่น your-app.page.link ที่สามารถสร้างแบรนด์ได้ใน Firebase Console
  • การประมวลผลฝั่งไคลเอ็นต์ — ลิงก์ถูกประมวลผลผ่าน Firebase Dynamic Links SDK สำหรับ Android และ iOS โดยส่งอาร์กิวเมนต์ไปยัง intent หรือ scene
  • การวิเคราะห์ — Firebase รวบรวมสถิติเกี่ยวกับคลิก การติดตั้ง และการเปลี่ยนผ่านผ่าน Dynamic Links โดยอัตโนมัติ

Firebase Dynamic Links คือเทคโนโลยีของ Google ที่สร้างลิงก์เดียวที่นำไปยังเนื้อหาที่ต้องการในแอปมือถือหรือเว็บไซต์ โดยปรับพฤติกรรมตามแพลตฟอร์มและสถานะการติดตั้ง ลิงก์จะตรวจสอบว่าแอปได้รับการติดตั้งบนอุปกรณ์หรือไม่: ถ้าติดตั้ง — จะเปิดแอปพร้อมส่งผ่านพารามิเตอร์ ถ้าไม่ได้ติดตั้ง — จะเปลี่ยนเส้นทางไปยัง Google Play หรือ App Store เพื่อติดตั้ง และหลังการติดตั้งจะเปลี่ยนเส้นทางไปยังหน้าจอเป้าหมาย

คุณสมบัติหลัก: Deferred Deep Linking

ข้อได้เปรียบหลักของ Dynamic Links เหนือดีพลิงก์ทั่วไปคือการรองรับดีพลิงก์แบบเลื่อนเวลา Deferred Deep Linking หมายถึงบริบทการเปลี่ยนผ่าน (พารามิเตอร์ลิงก์) จะถูกเก็บรักษาไว้แม้ว่าแอปยังไม่ได้ติดตั้ง เมื่อผู้ใช้ติดตั้งแอปจากร้านค้า Dynamic Links SDK จะอ่านบริบทที่บันทึกไว้และส่งต่อไปยังหน้าจอที่ต้องการ หากไม่มีเทคโนโลยีนี้ ผู้ใช้จะมายังหน้าจอหลักหลังการติดตั้ง และสูญเสียรหัสโปรโมชั่น คำเชิญ หรือลิงก์ไปยังคำสั่งซื้อที่เฉพาะเจาะจง

กรณีการใช้งาน

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

กลไกการทำงานของ Dynamic Links ประกอบด้วยหลายขั้นตอน ซึ่งแต่ละขั้นตอนอาจแตกต่างกันไปตามสถานะของแอป เมื่อผู้ใช้คลิกลิงก์ไดนามิก เบราว์เซอร์จะส่งคำขอไปยังเซิร์ฟเวอร์ Firebase Firebase ตรวจสอบว่าแอปได้รับการติดตั้งหรือไม่ผ่านการตรวจสอบ intent-filter หรือ universal link ถ้าแอปติดตั้งแล้ว Firebase จะเปิดแอปพร้อมส่งผ่านดีพลิงก์ ถ้าไม่ได้ติดตั้ง — จะเปลี่ยนเส้นทางไปยังหน้าร้านค้าหรือเวอร์ชันเว็บ

โครงสร้างของลิงก์ไดนามิก

Dynamic Link มาตรฐานประกอบด้วย URL พื้นฐาน พารามิเตอร์ลิงก์ และแท็กการตลาดที่ไม่บังคับ URL พื้นฐาน คือโดเมนเช่น your-app.page.link ที่ลงทะเบียนใน Firebase Console พารามิเตอร์ดีพลิงก์ถูกกำหนดผ่านพารามิเตอร์คำค้นหา: link (URL เป้าหมายภายในแอป), apn (ชื่อแพ็กเกจ Android), ibi (iOS Bundle ID), st และ sd (ชื่อเรื่องและคำอธิบายสำหรับตัวอย่างโซเชียล) แท็กการตลาด utm_source, utm_medium, utm_campaign จะถูกส่งไปยัง Google Analytics เพื่อการติดตาม

พารามิเตอร์คำอธิบายตัวอย่าง
linkดีพลิงก์เป้าหมายhttps://yourapp.page.link/product/123
apnชื่อแพ็กเกจ Androidcom.example.myapp
ibiiOS Bundle IDcom.example.myapp.ios
stชื่อเรื่องโซเชียลข้อเสนอพิเศษ
sdคำอธิบายโซเชียลส่วนลด 30% สำหรับคำสั่งซื้อแรก

Firebase Console มีอินเทอร์เฟซแบบภาพสำหรับสร้าง Dynamic Links ในส่วน Engage > Dynamic Links ในคอนโซล คุณสามารถกำหนดพารามิเตอร์ลิงก์ทั้งหมด รวมถึงดีพลิงก์ พฤติกรรมบนเว็บ ข้อมูลเมตาโซเชียล และแท็ก UTM หลังจากสร้างลิงก์ คอนโซลจะให้ URL ที่พร้อมใช้งานพร้อมกับสถิติเกี่ยวกับคลิกและการเปลี่ยนผ่าน สำหรับการสร้างลิงก์จำนวนมาก ใช้ REST API ของ Firebase Dynamic Links ที่มีการรับรองความถูกต้อง OAuth 2.0

การสร้างลิงก์ผ่าน REST API

สำหรับการสร้าง Dynamic Links เชิงโปรแกรม จะส่งคำขอ POST ไปยัง Firebase Dynamic Links API เนื้อหาของคำขอประกอบด้วย dynamicLinkInfo พร้อมพารามิเตอร์ดีพลิงก์ การตั้งค่าแพลตฟอร์ม และข้อมูลเมตาโซเชียล API จะส่งคืน URL ที่พร้อมใช้งานเช่น https://your-app.page.link/abc123 สำหรับลิงก์ที่มีอายุยาว ใช้ suffix.option = UNIQUE — ลิงก์สั้นที่มีส่วนต่อท้ายไม่ซ้ำกัน สำหรับลิงก์ชั่วคราว — SHORT ที่อาจมีการชนกัน

js
const axios = require("axios")

const apiUrl = "https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=API_KEY"

const data = {
    dynamicLinkInfo: {
        domainUriPrefix: "https://yourapp.page.link",
        link: "https://yourapp.com/promo/summer",
        androidInfo: { androidPackageName: "com.example.myapp" },
        iosInfo: { iosBundleId: "com.example.myapp.ios" },
        socialMetaTagInfo: {
            socialTitle: "โปรโมชั่นฤดูร้อน",
            socialDescription: "ส่วนลดสูงสุด 50% จนถึงสิ้นเดือน"
        }
    },
    suffix: { option: "UNIQUE" }
}

axios.post(apiUrl, data)
    .then(res => console.log(res.data.shortLink))
    .catch(err => console.error(err))

ลิงก์สั้นและแท็ก UTM

Dynamic Links จะสร้าง URL สั้นที่มีความยาว 6–8 ตัวอักษรหลังโดเมนโดยอัตโนมัติ ทำให้เหมาะสำหรับใช้ใน SMS และโซเชียลเน็ตเวิร์ก พารามิเตอร์ UTMจะถูกเพิ่มผ่านฟิลด์ utmParameters หรือโดยตรงในพารามิเตอร์ link Firebase จะเชื่อมโยงคลิกบน Dynamic Links กับ Google Analytics สำหรับ Firebase โดยอัตโนมัติ ช่วยให้คุณติดตามการเข้าชมจากการอ้างอิงและการระบุแหล่งที่มาของแคมเปญ

การรวม Dynamic Links ใน Android

การตั้งค่า Dynamic Links ใน Androidรวมถึงการเพิ่ม Firebase SDK การกำหนดค่า intent-filter สำหรับ activity ที่รับดีพลิงก์ และการประมวลผลลิงก์ผ่าน Firebase Dynamic Links SDK หลังจากติดตั้ง SDK และเพิ่ม google-services.json คุณต้องลงทะเบียน activity ใน AndroidManifest.xml พร้อม intent-filter สำหรับประมวลผลลิงก์จากโดเมนของแอปของคุณ

การตั้งค่า intent-filter ใน AndroidManifest

Activity ที่ประมวลผล Dynamic Links ต้องมี intent-filter สำหรับการดำเนินการ VIEW และหมวดหมู่ DEFAULT และ BROWSABLE AndroidManifest.xmlรวมแท็ก data พร้อม android:scheme, android:host และ android:pathPrefix ที่ตรงกับดีพลิงก์ของคุณ สำหรับการประมวลผลลิงก์จากโดเมน page.link จะเพิ่ม intent-filter พร้อมสคีมา https และโฮสต์ของโดเมน Dynamic Links ของคุณ

xml
<!-- AndroidManifest.xml -->
<activity android:name=".MainActivity">
    <intent-filter>
        <action android:name=
            "android.intent.action.VIEW" />
        <category android:name=
            "android.intent.category.DEFAULT" />
        <category android:name=
            "android.intent.category.BROWSABLE" />
        <data android:scheme="https"
            android:host="yourapp.com"
            android:pathPrefix="/promo" />
    </intent-filter>
</activity>

การประมวลผลลิงก์ในโค้ด

หลังจากตั้งค่า intent-filter คุณต้องประมวลผล Dynamic Link ที่เข้ามาในโค้ดของ Activity FirebaseDynamicLinks API จะรับลิงก์จาก intent และส่งคืนวัตถุ PendingDynamicLinkData พร้อมพารามิเตอร์ที่แยกออกมา เมธอด getLink จะส่งคืนดีพลิงก์เป้าหมาย ซึ่งสามารถแยกวิเคราะห์และใช้สำหรับการนำทาง สิ่งสำคัญคือต้องจัดการลิงก์ทั้งในกรณีสตาร์ทเย็น (ผ่าน getIntent ใน onCreate) และสตาร์ทร้อน (ผ่าน onNewIntent)

การรวม Dynamic Links ใน iOS

การตั้งค่า Dynamic Links ใน iOSต้องมีการกำหนดค่าทั้งในฝั่ง Firebase และในโปรเจกต์ Xcode คุณต้องอัปโหลดคีย์ APNs ไปยัง Firebase Console เพิ่ม Firebase SDK ผ่าน Swift Package Manager หรือ CocoaPods และกำหนดค่า App Delegate เพื่อจัดการ Universal Links Dynamic Links ใน iOS ใช้ Universal Links สำหรับการเปลี่ยนผ่านที่ราบรื่นระหว่างเบราว์เซอร์และแอปโดยไม่มีหน้าตัวกลาง

การตั้งค่า Universal Links

Universal Links คือเทคโนโลยีของ Apple ที่เชื่อมต่อโดเมนของคุณกับแอปมือถือ ไฟล์ apple-app-site-association (AASA) จะถูกอัปโหลดไปยังเซิร์ฟเวอร์ที่ https://your-app.page.link/apple-app-site-association Firebase จะสร้างและบำรุงรักษาไฟล์นี้โดยอัตโนมัติสำหรับโดเมน Dynamic Links ของคุณ ใน Xcode คุณต้องเปิดใช้งาน Associated Domains และระบุ applinks:your-app.page.link ในความสามารถของโปรเจกต์

การประมวลผลลิงก์ผ่าน Firebase SDK

สำหรับ iOS การประมวลผล Dynamic Links จะทำผ่าน Firebase SDK ใน App Delegate หรือ Scene Delegate เมธอด application:continueUserActivity: จะสกัดกั้น Universal Link ที่เข้ามาและส่งต่อไปยัง Firebase Dynamic Links API ซึ่งจะแยกลิงก์เป้าหมายและพารามิเตอร์ Firebase SDK จะจัดการ Deferred Deep Links โดยอัตโนมัติโดยขอข้อมูลการติดตั้งผ่านพื้นที่จัดเก็บระยะสั้นของ Firebase Installation API

swift
import FirebaseDynamicLinks

class AppDelegate: UIApplicationDelegate {

    func application(
        _ application: UIApplication,
        continue userActivity: NSUserActivity,
        restorationHandler: @escaping
            ([UIUserActivityRestoring]?) -> Void
    ) -> Bool {
        return DynamicLinks.dynamicLinks()
            .handleUniversalLink(userActivity.webpageURL!) {
                dynamicLink, error in
                if let link = dynamicLink?.url {
                    self.handleDeepLink(link)
                }
            }
    }
}

ตัวอย่างการใช้งานใน Kotlin

มาดูตัวอย่างที่สมบูรณ์ของการประมวลผล Dynamic Link ในแอป Android โดยใช้ Kotlin MainActivity จะอ่าน Dynamic Link ที่เข้ามาทั้งในกรณีสตาร์ทเย็นและสตาร์ทร้อนของแอป ลิงก์จะถูกแยกวิเคราะห์เป็นพารามิเตอร์ที่ใช้สำหรับการนำทางไปยังหน้าจอที่ต้องการพร้อมส่งผ่านอาร์กิวเมนต์ ตัวอย่างแสดงการประมวลผลลิงก์ไปยังหน้าโปรโมชันพร้อมตัวระบุแคมเปญโปรโมชัน

kotlin
class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        handleDynamicLink(intent)
    }

    override fun onNewIntent(intent: Intent) {
        super.onNewIntent(intent)
        handleDynamicLink(intent)
    }

    private fun handleDynamicLink(intent: Intent) {
        FirebaseDynamicLinks.getInstance()
            .getDynamicLink(intent)
            .addOnSuccessListener { data ->
                val deepLink = data?.link ?: return@addOnSuccessListener
                val promoId = deepLink
                    .getQueryParameter("promoId") ?: ""
                if (promoId.isNotEmpty()) {
                    navigateToPromoScreen(promoId)
                }
            }
            .addOnFailureListener { e ->
                Log.e("DL", "ข้อผิดพลาดในการประมวลผลลิงก์", e)
            }
    }
}

การทดสอบ Dynamic Links

สำหรับการทดสอบ Dynamic Links จะใช้ Firebase Console ซึ่งคุณสามารถสร้างลิงก์ทดสอบและส่งไปยังอุปกรณ์ผ่านแอปส่งข้อความหรืออีเมล ตัวดีบัก Firebase Dynamic Links พร้อมใช้งานที่ https://your-app.page.link/?d=1 และแสดงข้อมูลโดยละเอียดเกี่ยวกับพฤติกรรมของลิงก์ เมื่อทดสอบ Deferred Deep Links คุณต้องตรวจสอบให้แน่ใจว่าแอปถูกถอนการติดตั้ง และหลังการติดตั้งลิงก์นำไปยังหน้าจอที่ถูกต้องพร้อมพารามิเตอร์ที่ส่งผ่าน

คำถามที่พบบ่อย

Dynamic Links แตกต่างจากดีพลิงก์ทั่วไปอย่างไร?

ดีพลิงก์ทั่วไปทำงานเฉพาะเมื่อติดตั้งแอปแล้วและไม่รักษาบริบทหลังการติดตั้ง Dynamic Links รองรับ Deferred Deep Linking — ผู้ใช้ติดตั้งแอปและไปที่หน้าจอเป้าหมายทันทีพร้อมพารามิเตอร์ลิงก์ที่เก็บไว้

จำเป็นต้องใช้เซิร์ฟเวอร์สำหรับ Dynamic Links หรือไม่?

ไม่จำเป็นต้องใช้เซิร์ฟเวอร์สำหรับการสร้างและประมวลผลลิงก์ — การดำเนินการทั้งหมดทำผ่าน Firebase Console, REST API หรือ Firebase SDK ฝั่งไคลเอ็นต์ สำหรับการสร้างลิงก์จำนวนมาก แนะนำให้ใช้ REST API แต่คอนโซลเหมาะสำหรับการสร้างด้วยตนเอง

Dynamic Link มีอายุการใช้งานนานเท่าใด?

Dynamic Links ไม่มีวันหมดอายุ — ลิงก์จะถูกเก็บไว้ใน Firebase ตลอดไปเว้นแต่จะถูกลบด้วยตนเอง ลิงก์สั้นที่มีส่วนต่อท้าย UNIQUE จะมีอยู่ indefinitely ขอแนะนำให้สร้างลิงก์ที่ไม่ซ้ำกันสำหรับแต่ละแคมเปญเพื่อการระบุแหล่งที่มาที่แม่นยำ

Dynamic Links ทำงานโดยไม่มีอินเทอร์เน็ตหรือไม่?

การประมวลผล Dynamic Linkต้องใช้การเชื่อมต่ออินเทอร์เน็ตในขั้นตอนการคลิกเนื่องจากเซิร์ฟเวอร์ Firebase ตรวจสอบสถานะการติดตั้งแอป หลังจากประมวลผลลิงก์แล้ว ข้อมูลจะถูกส่งไปยังแอปผ่าน intent หรือ Universal Link และพร้อมใช้งานแม้ในโหมดออฟไลน์

Firebase Dynamic Links มีค่าใช้จ่ายเท่าใด?

Firebase Dynamic Links ฟรีในแผน Spark ในแผน Blaze มีขีดจำกัด 50,000 คลิกต่อวันต่อโปรเจกต์โดยไม่มีค่าใช้จ่ายเพิ่มเติม การเกินขีดจำกัดจะบล็อกการสร้างลิงก์ใหม่จนถึงวันถัดไป

สรุป

  • Firebase Dynamic Links — ลิงก์อัจฉริยะที่นำผู้ใช้ไปยังแอปหรือเว็บไซต์ และเมื่อไม่มีแอป — ไปยังร้านค้าพร้อมรักษาบริบทหลังการติดตั้ง
  • Deferred Deep Linking — ข้อได้เปรียบสำคัญที่ช่วยให้ส่งผ่านบริบท (รหัสโปรโมชั่น คำเชิญ ลิงก์สินค้า) เมื่อเปิดครั้งแรกหลังการติดตั้ง
  • โครงสร้างลิงก์รวมถึงโดเมนพื้นฐาน (your-app.page.link) พารามิเตอร์ดีพลิงก์ การตั้งค่าแพลตฟอร์ม และข้อมูลเมตาโซเชียลสำหรับตัวอย่าง
  • การสร้างลิงก์ทำผ่าน Firebase Console, REST API หรือ Firebase SDK พร้อมรองรับแท็ก UTM สำหรับการรวมกับ Google Analytics
  • การรวมใน Androidต้องตั้งค่า intent-filter ใน AndroidManifest และประมวลผลผ่าน FirebaseDynamicLinks API ที่รองรับสตาร์ทเย็นและสตาร์ทร้อน
  • การรวมใน iOSใช้ Universal Links พร้อมไฟล์ AASA, Associated Domains และการประมวลผลผ่าน DynamicLinks SDK ใน AppDelegate หรือ SceneDelegate
  • ฟรีสูงถึง 50,000 คลิกต่อวัน ไม่หมดอายุลิงก์ สามารถสร้างโดเมนที่กำหนดเองสำหรับการสร้างแบรนด์ลิงก์

เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร

IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ

ปรึกษาโครงการ

อ่านเพิ่มเติม