123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203 |
- import * as compnt from "../../../public/js/compnt.js";
- export var os = {};
- export var app = {};
- export var uid = undefined;
- export var screen_name = undefined;
- /**
- * 检测客户端环境
- */
- export function checkClientEnvironment() {
- var ua = navigator.userAgent;
- var ANDROID_REG = /(Android);?[\s\/]+([\d.]+)?/;
- var IPAD_REG = /(iPad).*OS\s([\d_]+)/;
- var IPHONE_REG = /(iPhone\sOS)\s([\d_]+)/;
- var IQIYI_REG = /iqiyi/
- var QLIVE_REG = /QQLiveBrowser/;
- var WECHAT_REG = /MicroMessenger/;
- var WEIBO_REG = /__weibo__/;
- if (ua.match(ANDROID_REG)) {
- os.android = true;
- }
- if (ua.match(IPAD_REG)) {
- os.ipad = true;
- }
- if (ua.match(IPHONE_REG)) {
- os.ios = true;
- }
- if (ua.match(IQIYI_REG)) {
- app.iqiyi = true
- }
- if (ua.match(QLIVE_REG)) {
- app.qlive = true
- }
- if (ua.match(WECHAT_REG)) {
- app.wechat = true
- }
- if (ua.match(WEIBO_REG)) {
- app.weibo = true;
- }
- }
- export function active() {
- return new Promise(function(resolve, reject) {
- WeiboJSBridge.invoke('unicomFreeTraffic', {"type": 0}, {
- success: function(params) {
- //compnt.showAlert(JSON.stringify(params))
- // compnt.showAlert("激活成功~")
- resolve(params);
- },
- fail: function(params, code) {
- // compnt.showAlert("请激活以后开始享受免流")
- reject(params, code);
- },
- final: function(params) {
- reject(params);
- }
- });
- })
- }
- export function checkActiveResult() {
- return new Promise(function(resolve, reject) {
- WeiboJSBridge.invoke('unicomFreeSIM', {}, {
- success: function(params) {
- //compnt.showAlert(JSON.stringify(params))
- // compnt.showAlert("激活成功~")
- if (params.unicomFreeSIM == 1) {
- compnt.showAlert("激活成功~")
- resolve(params);
- } else {
- compnt.showAlert("激活失败")
- reject(params, code);
- }
- },
- fail: function(params, code) {
- // compnt.showAlert("请激活以后开始享受免流")
- reject(params, code);
- },
- final: function(params) {
- reject(params);
- }
- })
- })
- }
- export function getBrowserInfo() {
- return new Promise(function(resolve, reject) {
- WeiboJSBridge.invoke("getBrowserInfo", {}, function (params, success, code) {
- if (success) {
- // alert("用户信息是:" + JSON.stringify(params))
- uid = params.uid
- resolve(params);
- } else {
- if (code == WeiboJSBridge.STATUS_CODE.NO_RESULT) {
- // do something.
- reject(params, code);
- }
- }
- });
- /*WeiboJSBridge.invoke('getBrowserInfo', {}, {
- success: function(params) {
- //compnt.showAlert(JSON.stringify(params))
- //compnt.showAlert(params.uid);
- uid = params.uid
- resolve(params);
- },
- fail: function(params, code) {
- reject(params, code);
- },
- final: function(params) {
- reject(params);
- }
- });*/
- })
- }
- export function getUserInfo() {
- return new Promise(function(resolve, reject) {
- WeiboJSBridge.invoke("getUserInfo", {}, (params, success, code) => {
- if (success) {
- // alert("用户信息是:" + JSON.stringify(params))
- uid = params.id;
- screen_name = params.screen_name;
- resolve(params);
- } else {
- if (code == WeiboJSBridge.STATUS_CODE.NO_RESULT) {
- reject(params, code);
- }
- }
- });
- })
- }
- /**
- * 判断当前客户端版本是否达到指定版本
- * @param targetVersionString | String | "8.9.3" | 必须为三段版本号,中间用.分隔
- * @return moreThanTarget | Boolean | true | 是否达到指定版本
- * @author shaobo3@
- * @example
- * checkWeiboVersion('9.10.1');
- */
- export function checkWeiboVersion(targetVersionString = "9.11.2") {
- if (!targetVersionString) {
- return false;
- }
- var targetVersionArr = getVersionArr(targetVersionString);
- var clientVersionArr = getVersionArr();
- var part1Result = compareVer(clientVersionArr[0], targetVersionArr[0]);
- var part2Result = compareVer(clientVersionArr[1], targetVersionArr[1]);
- var part3Result = compareVer(clientVersionArr[2], targetVersionArr[2]);
- //先比较第一位版本号,不相等直接返回结果,相等判断第二位版本号;
- if (part1Result !== -1) return part1Result;
-
- //先比较第二位版本号,不相等直接返回结果,相等判断第三位版本号;
-
- if (part2Result !== -1) return part2Result;
-
- //先比较第三位版本号,不相等直接返回结果,全部相等则返回true;
- if (part3Result !== -1) return part3Result;
- return true;
- }
- const REG = /__weibo__(\d+).(\d+).(\d+)/;
- /**
- * 获取字符串中的版本号,并分段输出为数组
- * @param versionStr | string | "8.9.3" | 必须为三段版本号,中间用.分隔
- * @return versionArr | Array | [8,9,3]
- */
- var getVersionArr = (versionStr) => {
- var ua = navigator.userAgent;
- var _str = versionStr ? `__weibo__${versionStr}` : ua;
- var versionArr = [];
- if (REG.test(_str)) {
- versionArr.push(parseInt(RegExp.$1));
- versionArr.push(parseInt(RegExp.$2));
- versionArr.push(parseInt(RegExp.$3));
- return versionArr;
- }
- return [0, 0, 0];
- };
- var compareVer = (version1, version2) => {
- var result = -1;
- if (version1 > version2) {
- result = true;
- }
- if (version1 < version2) {
- result = false;
- }
- return result;
- };
|