前言

2015年5月28日,Google I/O大会上正式推出Android M(android6.0 API级别23),其中新增了一个特性叫AppLinks,它可以加强软件间的关联,可以把触屏端的流量带到移动端来。

Android App Links具有以下优势:

  • 安全且具体: Android App Links使用链接到您拥有的网站域的HTTP URL,因此没有其他应用可以使用您的链接。Android App Links的要求之一是您通过我们的网站关联方法验证您所在域的所有权。
  • 无缝的用户体验:由于Android App Links对您网站和应用中的相同内容使用单个HTTP URL,因此未安装应用程序的用户只需访问您的网站而不是应用程序 - 没有404,没有错误。
  • Android Instant Apps支持:使用Android Instant Apps,您的用户无需安装即可运行您的Android应用。要为您的Android应用添加即时应用支持,请设置Android应用链接并访问g.co/InstantApps。
  • 通过Google搜索吸引用户:用户可以通过在移动浏览器,Google搜索应用,Android屏幕搜索或Google智能助理中点击Google中的网址,直接在应用中打开特定内容。

官方链接:https://developer.android.com/training/app-links/

接下来我们就讲讲如何把App Links功能应用到我们的程式

1.首先在配置文件AndroidManifest.xml中声明ApplinksActivity

<activityandroid:name="这里填写包名.ApplinksActivity"android:alwaysRetainTaskState="true"android:launchMode="singleTask"android:noHistory="true"android:theme="@android:style/Theme.Translucent.NoTitleBar"><intent-filter android:autoVerify="true"><dataandroid:host="这里填写域名"android:scheme="http" /><dataandroid:host="这里填写域名"android:scheme="https" />....<category android:name="android.intent.category.DEFAULT" /><category android:name="android.intent.category.BROWSABLE" /><action android:name="android.intent.action.VIEW" /></intent-filter>
</activity>

2.然后在ApplinksActivity.java中处理链接跳转逻辑

@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);Intent intent = getIntent();Uri uri = intent.getData();String host = uri.getHost();String path = uri.getPath();if (host.equals("这里填写域名")){if(path.equals("链接路径")) {// 跳转app指定A界面} else if(path.equals("链接路径")) {// 跳转app指定B界面} else {...}}
}

以上为app端的配置,这个时候用户使用google浏览器访问了你配置声明好的域名时,它会弹出对话框询问你开启方式,如果用户点击选中了你的客户端时,那么它可以直接把你在浏览器中访问的链接带到app中进行操作。

如果你不希望弹出这个对话框,而是希望用户直接进入到你的app中,那么你还需要这两步操作进行认证:

1.生成assetlinks.json文件,

2.把这个文件上传到这里→  https://这里填写域名/.well-known/assetlinks.json

assetlinks.json文件格式:

[{
    "relation": ["delegate_permission/common.handle_all_urls"],
    "target" : { "namespace": "android_app",
      "package_name": "这里填写应用程式的包名",
       "sha256_cert_fingerprints": ["这里填写SHA256证书指纹"] }
  }]

SHA256证书指纹获取方式:

在Androidstudio的Terminal下输入: keytool -list -v -keystore 这里填写应用程式签名文件的完整路径

AppLinks更多信息,请参阅安卓官方链接:https://developer.android.com/training/app-links/verify-site-associations

App Links(APP关联)相关推荐

  1. Android M的App Links实现详解

    谷歌2015年的I/O大会上宣布了一个 新特性 (http://www.androidpolice.com/2015/05/28/io-2015-android-m-will-support-app- ...

  2. android app links,Android APP Links 配置

    一. 简介 在Instant App开发中,需要app支持Instant App Links. 本文中,主要介绍其作用,配置必需条件,配置的过程. 二. 作用 App Links 本质上是 Deep ...

  3. 深度链接、延迟深度链接、App Links以及关于LinkedME实现深度链接的原理解析

    开始之前,我们先介绍两个概念:深度链接(Deep Linking)和延迟深度链接(Deferred Deep Linking). 深度链接 我们通过例子来说明这个问题,比如说我们使用淘宝,看到一个宝贝 ...

  4. Android App links 链接打开app功能

    1.深链接Deep link(URI SCHEME协议) 深链接即我们通常说的scheme跳转,需要我们在清单文件中对activity添加intent-fillter,并定义scheme(包括但不限于 ...

  5. App Links的使用以及坑

    前言 App Links可以从一个URL或者短信中直接启动APP.不过只能在Android 6.0的版本上才能使用. 配置 在想调用的Activity上加上 <intent-filter and ...

  6. Django 中的根ulr与APP的url关联的思考

    ##Django 中的根ulr与APP的url关联的思考 今天看Django的url模块,其中根目录的url 如何关联到具体app的url,做了一些测试,可做参考. 首先,根目录的urls.py中,去 ...

  7. Android中App Links的使用。

    App Links我们可以 As上进行配置.Tools →App Links Assistant .在这个目录下进行配置 上图操作完会在你对应的activity中生成一个 会在你的清单文件中生成这样的 ...

  8. 完整iOS APP发布App Store上架流程

    如果你是新手,将在这里清晰发布到App Store整个上架流程,还有相应的流程解决方案. 如果你上架过iOS APP,这里会了解到有更快捷的上架过程. 上架iOS最基本需要一个付费的开发者账号,还没有 ...

  9. 2018最新苹果APP上架App Store流程(超详细)

    2018最新整理iOS app上架app详细教程 上架iOS需要一个付费688的开发者账号,还没有的话申请一个或者借用. 申请苹果开发者账号教程 上架App Store之前是先安装到苹果手机测试调试好 ...

  10. 2023最新苹果APP上架App Store流程(超详细)

    目录 上架iOS需要一个付费688的开发者账号,还没有的话申请一个或者借用. 申请苹果开发者账号教程 上架App Store之前是先安装到苹果手机测试调试好,app能正常运行再上架 iOS真机调试测试 ...

最新文章

  1. 面对复杂业务架构,阿里架构师是如何做的?(第一期)
  2. 18.移动架构数据库升级解决方案
  3. tableView下沉
  4. Java Servlet API中的forward()方法和redirect()方法的区别
  5. php培训出生做微电影网站的,微电影分享网站织梦整站源码
  6. mac npm全局安装权限不足问题解决
  7. 有意思的逻辑思维题(三)(hdu2211,蓝桥杯蚂蚁感冒)
  8. 大数据_Flink_数据处理_运行时架构4_作业调度原理及思考问题---Flink工作笔记0019
  9. 你真的会php,你真的会PHP吗?
  10. 2021-eclipse的安装及环境配置
  11. cad两直线相交画圆弧_cad制图中两个圆相交于一条直线怎么画
  12. Latex学习笔记(十五)特殊符号的插入
  13. 结合代谢组学和网络药理学技术发现的差异代谢物和中药成分的药物靶点关联等技术操作
  14. 华为无线路由器信道怎么测试软件,路由器无线信道是什么怎么设置
  15. 实时查看MD文件效果 - 在线Markdown预览
  16. 一位硕士毕业生三个月求职经历与经验结晶【转帖】
  17. xml 解析错误:语法错误 xml解析错误:找不到根元素
  18. 实践数据湖iceberg 第三十四课 基于数据湖icerberg的流批一体架构-流架构测试
  19. 【Python】数据可视化-散点图绘制
  20. jQuery 手风琴案例

热门文章

  1. Spring Boot 支持 HTTPS 如此简单,So easy!
  2. vitamin_baidu
  3. SCARA、通用6轴机器人奇异点位置与问题分析
  4. 台式计算机读不到u盘怎么回事,u盘读不出来怎么办?Win7电脑无法识别设备如何解决?...
  5. php eval 引号,PHP手册-eval()(可以将单引号中的变量解析)
  6. Unsafe code may only appear if compiling with /unsafe
  7. matlab适应度函数为什么有2个输出,基于遗传算法的LQR优化问题,适应度函数总是报错。...
  8. Hills And Valleys
  9. HP服务器配置远程管理端口iLO的基本方法
  10. html怎么创建页面书签链接,如何:在“设计”视图中为 Web 窗体页插入 HTML 超链接和书签...