// fingerPkg这里是包名
let _this = this;
// 判断平台
if (plus.os.name == "Android") {
// 判断有没有安装应用
if (
plus.runtime.isApplicationExist({
pname: _this.fingerPkg
// action: "weixin://" //这里是ios,需要配置,这里不做说明,可去官网查看
})
) {
console.log("微信应用已安装");
// 打开应用
plus.runtime.launchApplication(
{
pname: _this.fingerPkg,
extra: {
// 这里写额外参数
}
},
function(e) {
// 打开失败回调
console.log(JSON.stringify(e));
console.log("Open system default browser failed: " + e.message);
}
);
} else {
_this.$Common.user.showToast("检测到未下载应用,正在下载,请勿离开");
// 未下载应用,去下载, pkgUrl为下载地址
var dtask = plus.downloader.createDownload(_this.pkgUrl, {}, function(
d,
status
) {
// 下载完成,打开文件
if (status == 200) {
plus.runtime.openFile(d.filename);
} else {
_this.$Common.user.showToast("下载失败,请手动下载");
}
});
// 这里是监听下载进度,可以自己生成进度条
dtask.addEventListener("statechanged", function(task, status) {
if (!dtask) {
return;
}
switch (task.state) {
case 1:
_this.$Common.user.showToast("开始下载...");
break;
case 2:
_this.$Common.user.showToast("正在下载...");
break;
case 3: // 已接收到数据
var progressVal = (task.downloadedSize / task.totalSize) * 100;
_this.$Common.user.showToast(Number(progressVal) + "%");
break;
case 4:
dtask = null;
_this.$Common.user.showToast("正在打开文件...");
break;
}
});
// 开始下载
dtask.start();
}
} else if (plus.os.name == "iOS") {
// ios 暂未做,以后有机会补上
// plus.runtime.launchApplication({ action: "taobao://" }, function(e) {
// console.log("Open system default browser failed: " + e.message);
// });
}
uniapp结合H5+下载apk并安装打开
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。