MobLink Android端业务场景简单说明

来自:网络
时间:2022-12-26
阅读:
目录

前言

本文意在提供MobLink的业务场景使用说明希望可以给你带来更愉快的开发心情:

MobLink的功能实现就是在分享前会将链接的参数信息保存到服务器,分享者A通过微信、QQ等分享给他的好友B时,好友B打开链接,点击页面的“在app中打开”,网页中的js会尝试打开对应的APP。如果打开失败,js会把当前设备的信息缓存到我们的服务器,然后跳转app下载页面。后面app安装并启动,我们的sdk就会跟服务器请求缓存的参数,于是app就可以获取到链接设置的参数信息,如果js打开成功了,js会自己把页面中缓存的参数传递给app,app同样可以获取到链接设置的参数信息.如无码邀请,可以绑定传递参数,建议为uid,A分享给B,B注册后自动绑定A的uid.

参数设置

在App 中分享商品/内容/活动页面时,将您需要的参数信息添加到分享的链接中。

通过网页端的params直接设置参数信息

<script type="text/javascript" src="//1p.t4m.cn/applink.js"></script>
/*
* MobLink 支持数组=>MobLink([...]) 和对象=>MobLink({...}) 两种初始化形式
* 页面上有多个元素需要跳转时使用数组方式,仅单个元素需要跳转时可以使用对象的方式进行初始化
* el: 表示网页上Element的id值,该字段为空或者不写,则表示MobLink **默认浮层** 上的打开按钮(注意:该字段支持selector方式: 1.'.class' 2.'#id1' 3.['#id1','#id2'])
* path: 对应App里需要恢复页面的路径
* params: 网页需要带给客户端的参数
*/
// 页面上仅单个元素需要跳转时可以使用对象方式进行初始化
MobLink({
 el: '',
 path: 'demo/a',
 params: {
     key1: 'value1',
     key2: 'value2',
 }
})
// 页面上有多个元素需要跳转时要使用数组方式进行初始化
MobLink([
 {
     el: '',
     path: 'demo/a',
     params: {
         key1: 'value1',
         key2: 'value2',
     }
 },
 {
     el: '#openAppBtn1',
     path: 'demo/b',
     params: {
         key1: 'value1',
         key2: 'value2',
     }
 },
 {
     el: '#openAppBtn2',
     path: 'demo/c',
     params: {
         key1: 'value1',
         key2: 'value2',
     }
 }
]);
</script>

通过客户端的接口设置参数信息

通过getMobID接口生成MobId,并把mobid拼接在您的场景还原链接后面.

eg:f.moblink.mob.com/pro/scene/n…

javakotlin

//java代码
// 设置场景参数
HashMap senceParams = new HashMap();
senceParams.put("key1", "value1");
senceParams.put("key2", "value2");
senceParams.put("key3", "value3");

// 新建场景
Scene s = new Scene();
s.path = "/demo/a";
s.params = senceParams;

// 请求场景ID
MobLink.getMobID(s, new ActionListener() {
    public void onResult(String mobID) {
        // TODO 根据mobID进行分享等操作
    }

    public void onError(Throwable throwable) {
        // TODO 处理错误结果
    }
});

参数获取

在指定跳转的页面通过SceneRestorable接口获取链接中设置的的参数信息,您可以用这些参数做一下逻辑判断,实现您需求的功能,如多样化跳转,无码邀请,来源可追溯等功能

javakotlin

//java代码
public class RestoreSenceActivity extends Activity implements SceneRestorable {
    @Override
    public void onReturnSceneData(Scene scene) {
       // 处理场景还原数据, 可以在这里做更新画面等操作
    }
    @Override
       // 必须重写该方法,防止MobLink在某些情景下无法还原
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        setIntent(intent);
        MobLink.updateNewIntent(getIntent(), this);
   }
}
返回顶部
顶部