Android Firebase接入(二)--Firebase 动态链接(Dynamic Links)

动态链接简介

生成一个根据不同的场景响应不同行为的链接。比如:你想要为app添加一个房间内邀请好友的功能,如果好友也安装了此app,点击分享链接就进入此房间,如果好友没有安装此app,那就跳转到Google Play下载页面(或者你自定义的任何页面),如果好友没有安装此app,而且他是苹果手机,那就跳转到苹果商店的应用下载页面。这个功能就可以使用Firebase的动态链接实现。

注:由于Firebase需要翻墙使用,请自备梯子,否则无法使用动态链接。

生成动态链接最简单的方式就是使用Firebase控制台生成,在设置动态链接之前要先给项目添加SHA1和SHA256指纹信息:


SHA1和SHA256可以通过命令行获取:

Mac环境:

keytool -exportcert -list -v \
-alias androiddebugkey -keystore ~/.android/debug.keystore


Windows环境:

keytool -exportcert -list -v \
-alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore


输入命令行后需要输入密钥库口令,默认的密钥库口令是android

获取正式签名证书SHA1和SHA256的命令行:

keytool -exportcert -list -v \
-alias <your-key-name> -keystore <path-to-production-keystore>

在<your-key-name>填入密钥名,<path-to-production-keystore>填入密钥路径,然后输入密钥库口令即可获取SHA1和SHA256。


设置动态链接

添加SHA1和SHA256完成后,打开Firebase的动态链接模块:


在Firebase控制台的Dynamic Links模块,点击新建动态链接,到达以下界面:


1.设置短链接地址,这就是后面生成的短动态链接,使用默认的就可以,点击下一步


2.设置深层链接,在电脑上打开会跳转到这个网址,一般填此app的Google Play链接。笔者随意填的一个网址用于测试:https://wkxjc.github.io/peppa_pig.jpg,名称随便填,点击下一步


3.针对iOS定义链接行为:在苹果机上打开会跳转的链接地址,可以选择打开第2步中定义的深层链接地址,也可以定义在iOS应用中打开深层链接,如果选择在iOS应用中打开链接,那么就要选择一个此项目中的iOS应用。然后会细分成:用户安装了此应用时,跳转的链接地址,和用户没有安装此应用时,跳转的链接地址。由于本项目中没有iOS应用,就选择在浏览器中打开第2步中的链接地址,点击下一步。


4.设置Android设备跳转的链接。和iOS链接行为类似,可以选择跳转到第2步中的链接地址,也可以选择在Android应用中打开深层链接。如果用户没有安装此应用,则跳转到应用的Google Play地址或者自定义网址。高级设置中还可以设置如果应用低于某版本,则打开Google Play引导用户更新。一般选择应用的Google Play页面即可。但是本例中的应用未在Google Play中上架,所以打开Google Play会查找不到应用,那么笔者将其跳转到自定义网址:Firebase官方Demo页面:https://github.com/firebase/quickstart-android。高级设置根据自己的需要勾选,本例中不勾选,点击下一步。


5.广告系列跟踪暂时没用上,直接不填,点击创建。

创建完成后可以在链接详情中查看链接:



短动态链接和长动态链接只有长短的区别。点击两个链接都可以实现我们设置的跳转。

可以看到,本例中的短动态链接地址是:https://studyfirebasedynamiclinks.page.link/FDgu

我们测试一下,在电脑上打开:


可以看到,确实打开了我们设置的深层链接地址。在ios上打开也会跳转到此深层链接,故不再演示。在Android设备上打开:


可以看到,跳转到了Firebase官方Demo的地址。

注:由于Firebase需要翻墙使用,请自备梯子,否则无法跳转。

猜你喜欢

转载自blog.csdn.net/alpinistwang/article/details/80804685