一、什麼是應用鏈接
應用鏈接是Android系統提供的一種機制,允許應用程序與網頁進行深度鏈接,當用戶點擊網頁上的鏈接時,可以直接打開相關聯的應用程序,而不是彈出瀏覽器。
應用鏈接需要在應用程序中配置,並在網站上添加Digital Asset Links文件,來讓系統知道應用和網站之間的關聯關係。這樣系統就能夠智能地處理用戶的點擊操作,為用戶提供更好的使用體驗。
二、應用鏈接的配置
要實現應用鏈接,應用程序需要在應用清單文件中添加相關的配置信息。以下是一個示例:
<activity android:name=".MainActivity" android:label="@string/app_name"> <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="http" android:host="example.com" android:pathPrefix="/articles"/> </intent-filter> </activity>
上面的代碼段就是一個典型的應用鏈接配置。其中,android:autoVerify="true"
表示自動驗證 Digital Asset Links 文件中的聲明,並將應用鏈接與 Web 站點關聯起來。
<data>
元素中定義了應用鏈接的 URI 模式,例如 http://example.com/articles/*
,這裡的協議是http,主機名是example.com,路徑是/articles。這個 URI 模式將與網站上的 Digital Asset Links 文件中定義的 URI 模式相匹配。
三、Digital Asset Links文件的創建
要添加應用鏈接的支持,網站上必須要添加 Digital Asset Links 文件,這個文件包含了與應用關聯的網址信息。以下是一個示例:
{ "relation": ["delegate_permission/common.handle_all_urls"], "target": { "namespace": "android_app", "package_name": "com.example.myapp", "SHA256_cert_fingerprints": ["12:34:56:78:90:AB:CD:EF:12:34:56:78:90:AB:CD:EF:12:34:56:78"] } }
上面的JSON格式的文件內容定義了應用的包名和證書指紋,這與應用清單文件中配置的信息相匹配。當網站上的 Digital Asset Links 文件中的 URI 模式與應用程序的應用鏈接過濾器匹配時,Android 系統會將應用程序與 URIs 相關聯。
四、如何測試應用鏈接
測試應用鏈接時,可以在網站上添加類似下面的 HTML 代碼:
<a href="http://example.com/articles/123" target="_blank">Open in app</a>
當用戶點擊這個鏈接時,系統會提示用戶選擇應用程序打開鏈接。如果沒有安裝應用程序,會默認打開鏈接所在的瀏覽器。
五、注意事項
在使用應用鏈接時,需要注意以下幾個問題:
1. Digital Asset Links 文件必須部署在網站的根目錄下,名稱為/.well-known/assetlinks.json
。
2. 當使用 Https 進行傳輸時,必須使用 SSL 證書。
3. 應用鏈接的配置需要謹慎處理,一旦配置錯誤,可能導致應用程序無法通過鏈接打開。
結語
通過應用鏈接機制,Android 系統能夠智能地將網頁鏈接與應用程序關聯起來,為用戶提供更加順暢的使用體驗。在實現應用鏈接時,需要在應用程序的清單文件中配置相關信息,並在網站上添加 Digital Asset Links 文件。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/283138.html