mtl-js-sdk
Version:
ynf-fw-mtl-api
75 lines (63 loc) • 2.21 kB
JavaScript
;
function Plugin(options, exports = {}) {
const { platform } = options || { platform: window.mtl.platform };
const upesnVersion = window.mtl.upesnVersion || 0
//初始化
const init = function(obj) {
if (platform == "APIAndroid" || platform == 'APIIos' || (platform == 'upesn' && upesnVersion > 0 && upesnVersion % 2 == 0)) {
execApiBridge('init', obj);
} else {
typeof obj.success === "function" && obj.success({});
}
};
//结束
const unInit = function(obj) {
if (platform == "APIAndroid" || platform == 'APIIos' || (platform == 'upesn' && upesnVersion > 0 && upesnVersion % 2 == 0)) {
execApiBridge('unInit', obj);
} else {
typeof obj.success === "function" && obj.success({});
}
};
const setTips = function(obj) {
if (platform == "APIAndroid" || (platform == 'upesn' && upesnVersion > 0 && upesnVersion % 2 == 0)) {
execApiBridge('setTips', obj);
} else {
typeof obj.success === "function" && obj.success({});
}
};
function invokeFail(param, err) {
if (!param) return;
if (err && !err.message) {
err.message = err.msg || err.errMsg;
}
typeof param.fail === "function" && param.fail(err);
}
function invokeSuccess(param, ret) {
if (!param) return;
typeof param.success === "function" && param.success(ret);
}
function execApiBridge(method, object) {
if (object === void 0) {
object = {};
}
var obj = window.api.require("mtlNFC");
if (!obj) {
invokeFail(object, {
msg: "module imChat not added",
});
return;
}
obj[method](object, function (ret, err) {
console.log("mtlNFC--------------", method, ret, err);
if (ret) {
invokeSuccess(object, ret);
} else {
invokeFail(object, err);
}
});
}
exports.module = { init, unInit, setTips };
exports.symbolPath = exports.symbolPath || "nfc";
return exports;
}
export default Plugin;