关于集成,看官网的写法就行了,集成并不麻烦:

创建Firebase Dynamic Links:

https://firebase.google.com/docs/dynamic-links/android/create

接收Firebase Dynamic Links:

https://firebase.google.com/docs/dynamic-links/android/receive

 

简单来说只有两个概念:动态链接(Dynamic Links)和深链接(Deep Link),点击了动态链接以后,不管是调起APP还是在电脑上的浏览器打开,都会把动态链接中的深链接传递过去。下面着重记录一些重点的,容易陷入耗时状态的注意事项:

      1.在注册您的应用时,请指定 SHA-1 签名密钥。如果您使用应用链接,还需要指定 SHA-256 密钥。在AndroidStudio获取的终端命令是: keytool -list -v -keystore ~/.android/debug.keystore。在控制台上,下面截图的两项不应该有空缺。

 

       2. 检查手机客户端的网络是否是全局代理

 

      3.  project的build.gradle里面要配置两处maven代码仓库:

 

4. deep link必须是一个合法的网址格式  “https.www.XXX.com”类似这样的

 

5.  关于Page Not Found:

       如果粘贴动态链接到浏览器中总是出这个提示,那么有3种可能的原因:

-- 指纹缺失

    检查SHA-1和SHA-256 签名密钥是否都在控制台上部署了

--  说明贴的url不正确

//好使https://i-fenrirdaliandev.ra9.app/links/?apn=com.fenrirdalian.app.ra9.dev&link=https://www.baidu.com///不好使https://i-fenrirdaliandev.ra9.app/links?apn=com.fenrirdalian.app.ra9.dev&link=https://www.baidu.com///好使https://dynamictry.page.link?apn=com.google.firebase.quickstart.deeplinks&link=https://www.baidu.com/

     重点检查”/“和 "?"的位置,比如下面的两个动态长链接,deep link都是百度官网,但是注意"/?"的细节,明显能看到links /link的动态链接是不一样的,link系列的link后面直接跟着问号,links系列的则相反。如果是因为这样的细节导致的 Page Not Found,先手动在浏览器上改url看看no page found的输入框提示是否会消失。

 

 

6. adb的方式进行测试:

      官方给的通过ADB测试网址:

adb shell am start -a android.intent.action.VIEW -d "{URL}" {package name}

但是其实加了包名反而不好用,不加包名反而是好使的,比如下面的样子,就能打开浏览器然后启动APP:

 ./adb shell am start -a android.intent.action.VIEW -d "https://i-fenrirdaliandev.ra9.app/links/juhCGTx2yNg7rjfJ6"  

ps:上面./adb的写法是因为没配adb,参考https://blog.csdn.net/Crystal_xing/article/details/102892394,这里面记录了很方便的使用./adb 

 

 

7. 关于谷歌浏览器搜索栏上粘贴link之后,动态链接第一次启动APP会打开商店的问题:

     一: 首先,先用上面第6列举的adb方式进行测试,不用手动操作,二是用adb的方式打开浏览器,看看是否仍然是第一次不断打开商店,如果变正常了,那么说明是机型的问题。

     二:不用真机,而是用模拟器的方式去测试,如果变正常了,那么也证明是机型的问题,和代码无关

     三:基本上粘贴到浏览器后面接一个空格以后再enter,百分百能调起APP,参考https://blog.csdn.net/Crystal_xing/article/details/104699543

 

 

 

更多相关文章

  1. android 开发-spinner下拉框控件的实现
  2. android HTTPURLConnection解决不能访问HTTPs请求
  3. Android(安卓)启动栈管理方式 (二)
  4. Cordova 3.x 源码分析(6) -- cordova.js本地交互JSNative
  5. Cordova 3.x 源码分析(6) -- cordova.js本地交互JSNative
  6. Android(安卓)网络链接,不要忘记添加网络权限。
  7. Android(安卓)动态加载(五) - 借尸还魂之代理Activity模式
  8. 【Android(安卓)NDK 开发】Ubuntu 函数库交叉编译 ( Android(安
  9. Android全屏显示的两种方式

随机推荐

  1. Android笔记-3
  2. Android开机动画bootanimation
  3. Android使用FFmpeg(三)--ffmpeg实现视频
  4. 安卓第三天---ViewPager控件实现滑动切换
  5. 设置TextView文字居中
  6. Android(安卓)Fragment生命周期图以及Act
  7. Android(2017-2018)BAT面试题整理(Android
  8. Android三角函数
  9. Getting Started with RabbitMQ on Andro
  10. android警告——Buttons in button bars