深度链接(deeplink)技术的出现彻底打破了APP之间的壁垒,使得用户能够在APP之间自如的跳转,现如今已经成为促进APP用户增长,提升APP线上营销推广效果的重要工具。怎样才能让APP快速集成深度链接功能呢?下面就以MobLink为例,介绍一下深度链接的快速集成。
首先需要在mob官网注册成为开发者,获得mob的APPkey,之后下载MobLink SDK开始集成(这里主要讲一下Andrid系统的集成,其他系统可在mob官网技术文档查看)。
一、配置gradle
1、 打开项目根目录的build.gradle,在buildscrip–>dependencies 模块下面添加 classpath ‘com.mob.sdk:MobSDK:+’,如下所示;
buildscript {
repositories {
jcenter()
}
dependencies {
...
classpath 'com.mob.sdk:MobSDK:+'
}
}
2、 在使用MobLink模块的build.gradle中,添加MobSDK插件和扩展,如:
// 添加插件
apply plugin: 'com.mob.sdk'
// 在MobSDK的扩展中注册MobLink的相关信息
MobSDK {
appKey "d580ad56b4b5"
appSecret "7fcae59a62342e7e2759e9e397c82bdd"
MobLink {}
}
二、调用SDK功能
1、初始化MobSDK
如果您没有在AndroidManifest.xml中设置appliaction的类名,MobSDK会将这个设置为com.mob.MobApplication,但如果您设置了,请在您自己的Application类中调用:
MobSDK.init(this);
以初始化MobSDK。
MobLink的主要功能在制作场景和还原场景,下面将分别细述其使用方法:
2、制作场景
可使用下面的方式来获取MobLink的场景ID:MobId,并将其用于分享。在场景数据还原时MobLink会根据MobId还原出场景数据,并回调用户进行特定的操作:
// 设置场景参数
HashMap senceParams = new HashMap();
senceParams.put("key1", "value1");
senceParams.put("key2", "value2");
senceParams.put("key3", "value3");
// 新建场景
Scene s = new Scene();
s.path = "/moblinkDemo/demo/a";
s.source = null;
s.params = senceParams;
// 请求场景ID
MobLink.getMobID(s, new ActionListener() {
public void onResult(String mobID) {
// TODO 根据mobID进行分享等操作
}
public void onError(Throwable throwable) {
// TODO 处理错误结果
}
});
3、还原场景
3-1、修改Activity的代码
让需要场景还原的activity实现SceneRestorable接口。像这样:
public class RestoreSenceActivity extends Activity implements SceneRestorable {
}
3-2、进入Mob开发者后台,填写“基础配置”
如下图,为应用添加URI Scheme和App Links:
3-3、配置Activity的intent-filter
请注意,不论您采用任何一种方案(或者两者都采用),scheme都是必填的,且scheme和host的配置必须跟后台配置的一致,否则会导致无法跳转到应用。
3-4、添加场景还原事件回调方法
在处理场景还原的Activity中实现回调方法:
public void onReturnSceneData(Scene scene) {
// 处理场景还原数据, 可以在这里做更新画面等操作
}
三、混淆设置
MobLink已经做了混淆处理,再次混淆会导致不可预期的错误,请在您的混淆脚本中添加如下的配置,跳过对MobLink的混淆操作:
-keep class com.mob.**{*;}
-dontwarn com.mob.**
以上就是通过MobLink SDK快速在APP上集成深度链接功能的过程,更多更能介绍可以到mob官网了解。