// v1.1.6 2019/01/25 09:30 // yesApp原生手机 调用函数 var yesApp = { // 使用变量 tbPidHttp: "http://flq.yeshitv.com/fanli/api/v1/s11/getTBPidInfo", // 淘客参数请求地址 tbPidInfo: null, // 淘客推广参数信息 // ================================================================================= 一切的初始, yestv对象检测 yestv: function () { var back = false; try{ if (yestv) { back = true; } else { back = false; } } catch (e) { back = false; console.log("yestv未知对象(请升级到最新版)"); } return back; }, // ================================================================================= 获取平台(设备类型):Android / ios platformGet: function() { var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; if (isAndroid) { return "android"; } else { return "ios"; } }, // ================================================================================= 用户信息 userInfo: function (callback) { if (callback == null) { callback = function () {}; } if (yesApp.yestv()) { var back = { id: '' }; var uid = ''; try{ uid = yestv.getUid(); } catch(e){ yesApp.showToast("获取用户ID失败(请升级到最新版)"); } // 获取到id if (uid != '' && uid > 0) { back.id = uid; callback(back); } // 未登录 else { try { yestv.login(); } catch(e){ yesApp.showToast("跳转登录失败(请升级到最新版)"); } } } }, // ================================================================================= 弹框 // 参数: 要提示的文字 showToast: function (conC) { if (conC == null) { conC = '亲,我很迷茫……'; } if (yesApp.yestv()) { try { yestv.toast(conC); } catch(e){ alert(conC); } } }, showLoading: function () { if (yesApp.yestv()) { try { yestv.showLoading(); } catch(e){ yesApp.showToast("弹出加载框失败(请升级到最新版)"); } } }, hideLoading: function () { if (yesApp.yestv()) { try { yestv.hideLoading(); } catch(e){ yesApp.showToast("关闭加载框失败(请升级到最新版)"); } } }, // ================================================================================= 是否开启分享 // 参数: 1. 是否开启 0-关闭 1-开启 shareBtn: function (stateC) { if (stateC == null) { stateC = 1; } if (yesApp.yestv()) { // 获取设备信息 var sys = yesApp.platformGet(); // 1. 安卓设备 if (sys == "android") { try { yestv.setShareBtn(stateC); } catch(e){ console.log("开启分享失败(请升级到最新版)"); } } // 2. IOS设备 else if (sys == "ios") { if (stateC == 1) { stateC = '1'; } else if (stateC == 0) { stateC = '0'; } // 获取版本号 var version = 0; try{ var strNum = yestv.getVersion() version = parseInt(strNum); } catch(e){ console.log("获取版本号失败(请升级到最新版)"); } // 老版本 if (version <= 37) { window.location.href = "yestv://setShareBtn#" + doui.Base64('en', stateC); } // 新版本 else { try { yestv.setShareBtn(stateC); } catch(e){ console.log("开启分享失败(请升级到最新版)"); } } } } }, // ================================================================================= 右上角原生功能按钮 // 参数: 1. 按钮图片地址 2. 执行函数的方法字符串,如:"doui.showToast();" topMenuBtn: function (iconUrlC, doStrC) { if (yesApp.yestv()) { if (iconUrlC == null) { iconUrlC = ""; yesApp.showToast("menu:请传递图片地址"); return false; } if (doStrC == null) { doStrC = ""; } yestv.setTopMenuRightIcon(iconUrlC, doStrC); } }, // ================================================================================= 隐藏左上角关闭 closeBtnHidden: function () { if (yesApp.yestv()) { try { yestv.hiddenTopMenuCloseBtn(); } catch(e){ console.log("取消关闭按钮失败(请升级到最新版)"); } } }, // ================================================================================= 设置页面标题 // 参数: 标题文字 titleSet: function (strC) { if (strC == null) { strC = ""; } if (yesApp.yestv()) { try { yestv.setTitle(strC); } catch(e){ yesApp.showToast("设置页面标题失败(请升级到最新版)"); } } else { window.location.href = "yestv://setTitle#" + doui.Base64('en', strC); } }, // ================================================================================= 生成签名后数据 // 参数: 要发送data(json)数据 AjaxData: function (dataC) { // 传输传递否 if (dataC == null) { dataC = {}; } // 初始 if (yesApp.yestv()) { var back = dataC; try{ var strJson = yestv.getRequestBaseParams(JSON.stringify(back)); back = JSON.parse(strJson); } catch (e) { yesApp.showToast("获取签名数据集失败(请升级到最新版)"); } return back; } }, AjaxDataOld: function (dataC) { // 传输传递否 if (dataC == null) { dataC = {}; } // 初始 if (yesApp.yestv()) { var back = dataC; // 提前封装 back.time = new Date().getTime(); back.version = yestv.getVersion(); back.platform = yesApp.platformGet(); // 生成组 var zu_mo = new Array(); for (var k in back) { var jiedian = k + "=" + back[k]; zu_mo.push(jiedian); } zu_mo.sort(); // 生成元素字符串 var str_mo = ""; for (var i = 0; i < zu_mo.length; i++) { str_mo += zu_mo[i] + "&"; } try { // 获取签名 var sign = yestv.getSign(str_mo); back.sign = sign; } catch (e) { yesApp.showToast("生成签名sign失败(请升级到最新版)"); } return back; } }, // ================================================================================= 请求淘客推广参数 tbPid: function (callback) { if (callback == null) { callback = function () {}; } if (yesApp.yestv()) { // 获取用户信息 yesApp.userInfo(function(user) { // 数据准备 var myurl = yesApp.tbPidHttp; var mydata = yesApp.AjaxData({ uid: user.id }); doui.AjaxJsonp(myurl, mydata, function(res) { if (res.code != 0) { yesApp.showToast(res.msg); } else { // 得到淘客推广参数 yesApp.tbPidInfo = JSON.stringify(res.data); // 通关回调函数 callback(); } }); }); } }, // ================================================================================= 跳转到任意页面 // 参数: 1. jumpDetail 2. params 3. 是否绿色通道 navigatorTo: function (jumpDetailC, paramsC, tfC) { if (tfC == null) { tfC = false; } if (yesApp.yestv()) { // 1. 跳到百川 if (jumpDetailC.type && jumpDetailC.type == "baichuan") { // 还没有淘客参数,那么去请求 if (yesApp.tbPidInfo == null && tfC == false) { yesApp.tbPid(function(){ try { yestv.jumpBaiChuan(yesApp.tbPidInfo, paramsC.url, jumpDetailC.spId); } catch(e){ yesApp.showToast("跳转百川失败(请升级到最新版)"); } }); } // 已经有淘客参数了 else { try { yestv.jumpBaiChuan(yesApp.tbPidInfo, paramsC.url, jumpDetailC.spId); } catch(e){ yesApp.showToast("跳转百川失败(请升级到最新版)"); } } } // 2. 普通跳转 else if (jumpDetailC.activity && jumpDetailC.controller) { // 获取设备信息 var sys = yesApp.platformGet(); // 1. 安卓设备 if (sys == "android") { try { yestv.jumpPage(jumpDetailC.activity, JSON.stringify(paramsC)); } catch(e){ yesApp.showToast("页面跳转失败(请升级到最新版)"); } } // 2. IOS设备 else if (sys == "ios") { try { yestv.jumpPage(jumpDetailC.controller, JSON.stringify(paramsC)); } catch(e){ yesApp.showToast("页面跳转失败(请升级到最新版)"); } } // 其他设备 else { yesApp.showToast("不是移动端设备"); } } // 3. 其他情况 else { yesApp.showToast("跳转传递信息不全"); } } }, // 页面关闭 pageClose: function () { if (yesApp.yestv()) { try { yestv.finishPage(); } catch(e){ yesApp.showToast("关闭页面失败(请升级到最新版)"); } } else { window.location.href = "yestv://finishPage"; } }, // 进入Web网页,参数:网页url pageToWeb: function(urlC, saveNowC) { if (yesApp.yestv()) { if (saveNowC == null) { saveNowC = true; } var platform = yesApp.platformGet(); if (platform == 'android') { var data = { url: urlC }; try{ if (saveNowC == true) { yestv.jumpPage("com.yeshi.ec.rebate.myapplication.ui.invite.ShareBrowserActivity", JSON.stringify(data)); } else { yestv.jumpPageWithFinishCurrentPage("com.yeshi.ec.rebate.myapplication.ui.invite.ShareBrowserActivity", JSON.stringify(data)); } } catch(e){ yesApp.showToast("跳转Web失败(请升级到最新版)"); } } else { var data = { url: urlC }; try{ if (saveNowC == true) { yestv.jumpPage("ShonpingShareViewController", JSON.stringify(data)); } else { yestv.jumpPageWithFinishCurrentPage("ShonpingShareViewController", JSON.stringify(data)); } } catch(e){ yesApp.showToast("跳转Web失败(请升级到最新版)"); } } } }, // 进入商品详情页,参数: 商品ID pageToGoods: function(spId) { if (yesApp.yestv()) { if (spId == null || spId == '') { yesApp.showToast("未传入商品ID"); } else { try { yestv.jumpGoodsSplash(spId); } catch(e){ yesApp.showToast("进入商品详情失败(请升级到最新版)"); } } } }, // 进入搜索页 pageToSearch: function(strC) { if (yesApp.yestv()) { if (strC == null) { strC = ''; } try { yestv.jumpSearch(strC); } catch(e){ yesApp.showToast("进入搜索失败(请升级到最新版)"); } } }, // 进入邀请页 pageToInvite: function() { if (yesApp.yestv()) { try { yestv.jumpInvite(); } catch(e){ yesApp.showToast("进入邀请失败(请升级到最新版)"); } } }, // 进入商品分享页,参数: 商品ID pageToShare: function (spId) { if (yesApp.yestv()) { if (spId == null || spId == '') { yesApp.showToast("未传入商品ID"); } else { var platform = yesApp.platformGet(); if (platform == 'android') { var data = { url: "http://flq.yeshitv.com/fanli/client/html/sharegoods/index.html?id=" + spId }; try{ yestv.jumpPage("com.yeshi.ec.rebate.myapplication.ui.invite.ShareBrowserActivity", JSON.stringify(data)); } catch(e){ yesApp.showToast("进入分享失败(请升级到最新版)"); } } else { var data = { url: "http://flq.yeshitv.com/fanli/client/html/sharegoods/index.html?id=" + spId }; try{ yestv.jumpPage("ShonpingShareViewController", JSON.stringify(data)); } catch(e){ yesApp.showToast("进入分享失败(请升级到最新版)"); } } } } }, // 进入收藏页面 pageToCollect: function () { if (yesApp.yestv()) { var platform = yesApp.platformGet(); if (platform == 'android') { try{ yestv.jumpPage("com.yeshi.ec.rebate.myapplication.ui.invite.ShareBrowserActivity", null); } catch(e){ yesApp.showToast("进入收藏失败(请升级到最新版)"); } } else { try{ yestv.jumpPage("ShonpingShareViewController", null); } catch(e){ yesApp.showToast("进入收藏失败(请升级到最新版)"); } } } }, // 进入浏览记录页 pageToHistory: function () { if (yesApp.yestv()) { var platform = yesApp.platformGet(); if (platform == 'android') { try{ yestv.jumpPage("com.yeshi.ec.rebate.myapplication.ui.mine.MyFootmarkActivity", null); } catch(e){ yesApp.showToast("进入浏览记录失败(请升级到最新版)"); } } else { try{ yestv.jumpPage("FootprintsViewController", null); } catch(e){ yesApp.showToast("进入浏览记录失败(请升级到最新版)"); } } } }, // 进入用户信息修改页 pageToUserUpdate: function () { if (yesApp.yestv()) { var platform = yesApp.platformGet(); if (platform == 'android') { try{ yestv.jumpPage("com.yeshi.ec.rebate.myapplication.ui.mine.MyInfoActivity", null); } catch(e){ yesApp.showToast("进入用户信息失败(请升级到最新版)"); } } else { try{ yestv.jumpPage("userInfoViewController", null); } catch(e){ yesApp.showToast("进入用户信息失败(请升级到最新版)"); } } } }, };