Android中使用App Links

App Links是谷歌在2015年的I/O大会上宣布了一个新特性:允许开发者将app和他们的web域名关联。这一举措是为了最小化用户遇到“打开方式”对话框的概率。

开发者如何实现App Links

在manifest中添加标签


Android中使用App Links_第1张图片
AppLinks intent-filter.png
   
        
    
        
        
    
        
    

android:autoVerify="true" 为配置的自动验证机制
此机制会在App第一次安装中自动验证,因此在每次点击跳转不会有应用打开延时的问题


创建语句列表

详见Anroid developers官网

Statement List Generator and Tester 工具生成assetlinks.json

  • 首先获取得到你应用的签名证书SHA256


    Android中使用App Links_第2张图片
    App package fingerprint.png

可以通过下面语句取得SHA256
keytool -list -v -keystore FausgoalRepositoryApp.jks

  • 下面便是生成的assetlinks.json语句直接复制出来保存assetlinks.json文件即可


    Android中使用App Links_第3张图片
    assetlinks.json.png

填写完成后,把assetlinks.json上传到你的服务器上可以使用TEST STATEMENT 按钮测试是否验证成功
验证成功了,重新编译安装你的程序,当点击http[s]://ohjh9h7st.qnssl.com 相关链接时即可直接启动你的APP

Note:assetlinks.json文件中是一个JSON数组,可存放多个配置


语句列表位置

详见Anroid developers官网

  • 网站声明语句

scheme://domain/.well-known/assetlinks.json
Note :.well-known/assetlinks.json 为固定值
assetlinks.json 文件必须是 Content-Type: application/json格式类型的json文件

例如:

我这里配置的的为:https://ohjh9h7st.qnssl.com/.well-known/assetlinks.json

  • Android应用程序声明语句

AndroidManifest.xml:


 
   ...
   
   ...
 

> ```
> res/values/strings.xml:
> ```

 ...
 
   ... statement list ...
 

> ```

##### 例如:
![asset_statements.png](http://upload-images.jianshu.io/upload_images/1871104-587f307cea148134.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
> 我这里配置的为:


[{
"include": "https://ohjh9h7st.qnssl.com/.well-known/assetlinks.json"
}]

也可直接配置为:

    ...
    
      [{
        \"relation\": [\"delegate_permission/common.share_location\"],
        \"target\": {
          \"namespace\": \"web\",
          \"site\": \"https://example.com\"
        }
      }]
    

测试:
adb shell am start -a android.intent.action.VIEW \ -c android.intent.category.BROWSABLE \ -d "http://ohjh9h7st.qnssl.com"

相关代码

你可能感兴趣的:(Android中使用App Links)