網(wǎng)站首頁 編程語言 正文
前言
本文意在提供MobLink的業(yè)務場景使用說明希望可以給你帶來更愉快的開發(fā)心情:
MobLink的功能實現(xiàn)就是在分享前會將鏈接的參數(shù)信息保存到服務器,分享者A通過微信、QQ等分享給他的好友B時,好友B打開鏈接,點擊頁面的“在app中打開”,網(wǎng)頁中的js會嘗試打開對應的APP。如果打開失敗,js會把當前設備的信息緩存到我們的服務器,然后跳轉(zhuǎn)app下載頁面。后面app安裝并啟動,我們的sdk就會跟服務器請求緩存的參數(shù),于是app就可以獲取到鏈接設置的參數(shù)信息,如果js打開成功了,js會自己把頁面中緩存的參數(shù)傳遞給app,app同樣可以獲取到鏈接設置的參數(shù)信息.如無碼邀請,可以綁定傳遞參數(shù),建議為uid,A分享給B,B注冊后自動綁定A的uid.
參數(shù)設置
在App 中分享商品/內(nèi)容/活動頁面時,將您需要的參數(shù)信息添加到分享的鏈接中。
通過網(wǎng)頁端的params直接設置參數(shù)信息
<script type="text/javascript" src="http://1p.t4m.cn/applink.js"></script>
/*
* MobLink 支持數(shù)組=>MobLink([...]) 和對象=>MobLink({...}) 兩種初始化形式
* 頁面上有多個元素需要跳轉(zhuǎn)時使用數(shù)組方式,僅單個元素需要跳轉(zhuǎn)時可以使用對象的方式進行初始化
* el: 表示網(wǎng)頁上Element的id值,該字段為空或者不寫,則表示MobLink **默認浮層** 上的打開按鈕(注意:該字段支持selector方式: 1.'.class' 2.'#id1' 3.['#id1','#id2'])
* path: 對應App里需要恢復頁面的路徑
* params: 網(wǎng)頁需要帶給客戶端的參數(shù)
*/
// 頁面上僅單個元素需要跳轉(zhuǎn)時可以使用對象方式進行初始化
MobLink({
el: '',
path: 'demo/a',
params: {
key1: 'value1',
key2: 'value2',
}
})
// 頁面上有多個元素需要跳轉(zhuǎn)時要使用數(shù)組方式進行初始化
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>
通過客戶端的接口設置參數(shù)信息
通過getMobID接口生成MobId,并把mobid拼接在您的場景還原鏈接后面.
eg:f.moblink.mob.com/pro/scene/n…
javakotlin
//java代碼
// 設置場景參數(shù)
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 根據(jù)mobID進行分享等操作
}
public void onError(Throwable throwable) {
// TODO 處理錯誤結(jié)果
}
});
參數(shù)獲取
在指定跳轉(zhuǎn)的頁面通過SceneRestorable接口獲取鏈接中設置的的參數(shù)信息,您可以用這些參數(shù)做一下邏輯判斷,實現(xiàn)您需求的功能,如多樣化跳轉(zhuǎn),無碼邀請,來源可追溯等功能
javakotlin
//java代碼
public class RestoreSenceActivity extends Activity implements SceneRestorable {
@Override
public void onReturnSceneData(Scene scene) {
// 處理場景還原數(shù)據(jù), 可以在這里做更新畫面等操作
}
@Override
// 必須重寫該方法,防止MobLink在某些情景下無法還原
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
MobLink.updateNewIntent(getIntent(), this);
}
}
原文鏈接:https://juejin.cn/post/7142780188047179813
相關推薦
- 2022-06-13 Python基本數(shù)據(jù)類型及內(nèi)置方法_python
- 2022-12-15 Oracle?listagg去重distinct的三種方式總結(jié)_oracle
- 2024-01-11 spring 事務控制 設置手動回滾 TransactionAspectSupport.curren
- 2022-12-01 Flutter路由框架Fluro使用教程詳細講解_Android
- 2022-09-25 阿里云服務器如何部署ssl證書即https的設置,以及為ip部署ssl
- 2022-02-22 Linux系統(tǒng)下根目錄擴容介紹_Linux
- 2022-05-17 ubuntu Could NOT find CURL (missing: CURL_LIBRARY
- 2022-07-17 JDK、JRE、JVM是什么?有什么區(qū)別?
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支