Deep Links và Universal Links trong phát triển di động: khái niệm, loại và cách cấu hình

Tác giả: IT Sectr Đã đăng: 2026-05-07 Thời gian đọc: 9 phút

Deep Link là liên kết dẫn không phải đến trang web mà đến một màn hình cụ thể trong ứng dụng di động. Theo Báo cáo Branch.io Mobile Deep Linking 2025, các ứng dụng có deep links được cấu hình cho thấy tỷ lệ chuyển đổi cài đặt cao hơn 42% và tỷ lệ giữ chân cao hơn 28%. Hãy cùng tìm hiểu cách deep links hoạt động trên iOS và Android, các loại hiện có và những công cụ khả dụng.

Những điểm chính

  • Deep Link — liên kết mở ứng dụng tại một màn hình cụ thể. Tăng chuyển đổi lên 42% (Branch.io, 2025).
  • iOS sử dụng Universal Link (liên kết https duy nhất cho web và ứng dụng) và URL Scheme (giao thức tùy chỉnh như myapp://).
  • Android sử dụng App Links (liên kết https đã xác minh) và Intent Filters.
  • Firebase Dynamic Links và Branch.io — nền tảng cho deferred deep linking: liên kết hoạt động ngay cả khi ứng dụng chưa được cài đặt.
  • Deferred Deep Link — chuyển hướng sau khi cài đặt đến nội dung mong muốn. Được sử dụng để ghi nhận nguồn và tiếp thị lại.

Deep Link là URL dành cho ứng dụng di động chứa thông tin không chỉ về ứng dụng cần mở mà còn về màn hình cần hiển thị. Ví dụ, liên kết myapp://profile/42 mở ứng dụng myapp và ngay lập tức chuyển đến hồ sơ người dùng có ID 42. Nếu không có deep link, người dùng sẽ chỉ đến được màn hình chính của ứng dụng.

Deep links rất quan trọng cho tiếp thị và trải nghiệm người dùng. Chúng được sử dụng trong chiến dịch email, thông báo đẩy, chiến dịch quảng cáo và mã QR. Theo AppsFlyer (2025), các chiến dịch có deep links cho thấy CTR (tỷ lệ nhấp) cao hơn 35% so với liên kết thông thường đến màn hình chính.

Tại IT Sectr, chúng tôi đã triển khai deep links trong tất cả các dự án từ năm 2019. Kinh nghiệm của chúng tôi cho thấy cấu hình deep links đúng cách trong ứng dụng di động giúp tăng mức độ tương tác của người dùng lên 25–30% nhờ nội dung phù hợp ngay sau khi chuyển hướng.

URL Scheme vs Universal Link (iOS)

Trên iOS, có hai cách chính để triển khai deep links: URL Scheme (giao thức tùy chỉnh) và Universal Link (liên kết https tiêu chuẩn). Cả hai phương pháp đều cho phép cấu hình deep links cho ứng dụng di động và có ưu nhược điểm riêng.

URL Scheme là giao thức tùy chỉnh như myapp://path/to/screen. Nó hoạt động từ iOS 3.0 và không yêu cầu cấu hình máy chủ. Nhược điểm: nếu ứng dụng chưa được cài đặt, Safari không thể mở liên kết đó và người dùng thấy lỗi. Ngoài ra, URL Scheme có thể bị ứng dụng khác chặn vì giao thức không phải là duy nhất.

Universal Link (iOS 9+) là liên kết https thông thường hoạt động vừa như trang web vừa như deep link. Nếu ứng dụng đã được cài đặt, iOS chặn liên kết và mở ứng dụng. Nếu chưa, trang web sẽ mở. Universal Links an toàn hơn (tên miền đã được xác minh) và không hiển thị cảnh báo.

Thiết lập Universal Links yêu cầu hai bước: đặt tệp apple-app-site-association trên máy chủ và thêm entitlement trong Xcode. Tệp AASA chứa JSON với thông tin về các đường dẫn được hỗ trợ và ID ứng dụng. iOS tải tệp này khi cài đặt ứng dụng và xác minh khi theo liên kết.

Quan trọng: tệp AASA phải có thể truy cập qua HTTPS mà không có chuyển hướng. Tại IT Sectr, chúng tôi khuyên bạn nên cấu hình Universal Links thay vì URL Scheme cho tất cả các dự án mới — chúng an toàn hơn, đáng tin cậy hơn và mang lại trải nghiệm người dùng tốt hơn.

App Links (Android 6.0+) là phiên bản tương đương Universal Links trên Android cho ứng dụng di động. Ứng dụng chỉ định những URL https nào nó có thể xử lý và xác minh điều này thông qua tệp kỹ thuật số trên máy chủ. Android kiểm tra liên kết tên miền-ứng dụng mà không cần sự can thiệp của người dùng.

Để triển khai App Links, bạn cần: thêm Intent Filter vào AndroidManifest.xml với autoVerify="true", đặt tệp assetlinks.json trên máy chủ và ký ứng dụng. Sau đó, Android tự động chuyển hướng tất cả liên kết từ tên miền đã chỉ định đến ứng dụng (nếu đã cài đặt).

Intent Filter

Intent Filter là khai báo trong AndroidManifest.xml cho hệ thống biết Activity có thể xử lý những loại intent nào. Đối với deep links, Intent Filter chứa các phần tử data: lược đồ (http/https), máy chủ (tên miền) và đường dẫn.

xml

<activity android:name=".MainActivity">

    
    <intent-filter android:autoVerify="true">
        <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="example.com"
              android:pathPrefix="/product/" />
    </intent-filter>

    
    <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="myapp"
              android:host="product" />
    </intent-filter>
</activity>

Intent Filter đầu tiên xử lý App Links (liên kết https đã xác minh qua assetlinks.json). Intent Filter thứ hai xử lý URL Scheme (myapp://). Quan trọng: autoVerify="true" báo Android xác minh liên kết khi cài đặt ứng dụng. Nếu xác minh thất bại, hệ thống sẽ hiển thị hộp thoại chọn ứng dụng.

Tham số iOS Android
Loại deep linkUniversal Link (iOS 9+), URL SchemeApp Links (Android 6+), Intent Filter
Tệp xác minhapple-app-site-association (JSON)assetlinks.json (JSON)
Yêu cầu HTTPS
Không có ứng dụngTrang web mở raTrang web mở ra
Có thể bị ứng dụng khác chặnKhông (tên miền duy nhất)Không (tên miền đã xác minh)
Xung đột URL SchemeCó (bất kỳ ứng dụng nào cũng có thể đăng ký cùng scheme)

Bảng 1. So sánh cách tiếp cận của iOS và Android đối với deep linking. Universal Links và App Links là tiêu chuẩn hiện đại. URL Scheme và Intent Filters không có autoVerify là phương pháp cũ nhưng vẫn được sử dụng.

Firebase Dynamic Links và Branch.io

Firebase Dynamic Links (dịch vụ của Google) và Branch.io là các nền tảng quản lý deep links giải quyết vấn đề chính: làm gì khi ứng dụng chưa được cài đặt. Chúng tạo các liên kết thông minh chuyển hướng đến App Store / Google Play để cài đặt và sau khi cài đặt — đến màn hình mong muốn.

Firebase Dynamic Links là dịch vụ miễn phí (tính đến năm 2025). Cho phép tạo liên kết như https://yourdomain.page.link/xxx hoạt động như deep links trên cả hai nền tảng. Firebase Dynamic Links hỗ trợ deferred deep linking và ghi nhận nguồn.

Branch.io là nền tảng thương mại với chức năng rộng hơn: liên kết mạng xã hội, mã QR, phân tích và ghi nhận nguồn. Branch.io được sử dụng bởi các ứng dụng lớn (Pinterest, Reddit) và tích hợp với các MMP chính (AppsFlyer, Adjust).

Deferred Deep Link là liên kết sâu cho ứng dụng di động được kích hoạt sau khi cài đặt. Người dùng nhấp vào liên kết trước khi cài đặt ứng dụng, cài đặt ứng dụng và sau lần khởi chạy đầu tiên tự động đến màn hình mục tiêu. Đây là cơ chế chính cho chiến dịch quảng cáo: người dùng nhấp vào quảng cáo sản phẩm → cài đặt ứng dụng → thấy ngay sản phẩm đó.

Ghi nhận nguồn là việc xác định nguồn cài đặt. Chiến dịch quảng cáo nào đã mang người dùng đến? Kênh nào? Các nền tảng ghi nhận nguồn (AppsFlyer, Adjust, Branch) xác định mọi nhấp chuột vào deep link và liên kết nó với việc cài đặt. Theo AppsFlyer (2025), deferred deep links tăng tỷ lệ chuyển đổi mua hàng lên 30% so với cài đặt thông thường.

Tại IT Sectr, chúng tôi cấu hình deferred deep links cho các dự án thương mại điện tử. Ví dụ, trong ứng dụng mua sắm di động: người dùng thấy quảng cáo cho một sản phẩm cụ thể, nhấp vào liên kết, tải ứng dụng và ngay lập tức đến trang sản phẩm đó. Tỷ lệ chuyển đổi mua hàng trong kịch bản này cao gấp 2 lần so với cài đặt tiêu chuẩn.

Câu hỏi thường gặp

Sự khác biệt giữa Deep Link và Universal Link là gì?

Universal Link là một loại Deep Link dành cho iOS sử dụng giao thức https tiêu chuẩn. Deep Link là thuật ngữ chung cho bất kỳ liên kết nào dẫn vào ứng dụng. Universal Link là trường hợp cụ thể an toàn và đáng tin cậy hơn URL Scheme thông thường.

Deferred Deep Link là gì?

Đây là liên kết ghi nhớ ý định của người dùng (màn hình nào cần mở) cho đến khi ứng dụng được cài đặt. Sau khi cài đặt, ứng dụng nhận các tham số liên kết và mở màn hình mong muốn. Nếu không có điều này, người dùng sẽ đến màn hình chính sau khi cài đặt.

Làm thế nào để kiểm tra Deep Link có hoạt động không?

Trên iOS, sử dụng lệnh xcrun simctl openurl booted "https://your.link". Trên Android, sử dụng adb shell am start -W -a android.intent.action.VIEW -d "https://your.link". Bạn cũng có thể sử dụng các dịch vụ như Branch.io để kiểm tra.

Có bắt buộc phải sử dụng Firebase hay Branch.io không?

Không, nếu ứng dụng đã được cài đặt — Universal Links và App Links là đủ. Firebase Dynamic Links hoặc Branch.io chỉ cần cho kịch bản "liên kết trước khi cài đặt" (deferred deep linking). Đối với hầu hết ứng dụng, deep links cơ bản là đủ.

Tổng kết

  • Deep Link — liên kết dẫn đến màn hình cụ thể của ứng dụng. Tăng chuyển đổi và tương tác.
  • Universal Links (iOS) và App Links (Android) — tiêu chuẩn hiện đại: liên kết https được xác minh qua tệp JSON trên máy chủ.
  • URL Scheme (myapp://) — phương pháp cũ nhưng vẫn được sử dụng. Dễ cấu hình hơn nhưng kém an toàn hơn.
  • Intent Filter trong AndroidManifest.xml — khai báo URL mà Activity có thể xử lý. Tham số autoVerify="true" kích hoạt xác minh.
  • Firebase Dynamic LinksBranch.io — nền tảng cho deferred deep linking (liên kết hoạt động trước khi cài đặt ứng dụng).
  • Deferred Deep Link — chuyển hướng đến màn hình mục tiêu sau khi cài đặt. Công cụ chính cho chiến dịch quảng cáo và ghi nhận nguồn.
  • Cấu hình deep links đúng cách tăng tỷ lệ chuyển đổi mua hàng lên đến 2 lần (dữ liệu IT Sectr, 2024–2025).

Chúng tôi sẽ phát triển ứng dụng di động chìa khóa trao tay

IT Sectr tạo các ứng dụng iOS và Android cho các công ty khởi nghiệp và doanh nghiệp từ năm 2017. Chúng tôi sẽ tư vấn và đề xuất giải pháp tốt nhất cho bạn.

Thảo luận dự án