添加scheme
在manifest.json文件中添加IOS及安卓的scheme节点
//IOS
"apple": {
"appid": "testguangdian.dome",/*iOS必选,苹果开发网站申请的appid,如io.dcloud.HelloMUI*/
"mobileprovision": "",/*iOS必选,打包配置文件*/
"password": "goncenleo01",/*iOS必选,导入配置文件密码*/
"p12": "",/*iOS必选,打包配置文件关联的个人证书*/
"devices": "universal",/*iphone,可取值iphone/ipad/universal*/
"urltypes":[
{
"urlidentifier":"testguangdian.dome",
"urlschemes":[
"zhsq"
]
}
],
"frameworks": []
},
复制代码
//安卓
"google": {
"packagename": "",/*Android必选,程序包名,如io.dcloud.HelloMUI*/
"keystore": "",/*Android必选,打包证书文件*/
"password": "",/*Android必选,打包证书密码*/
"aliasname": "",/*Android必选,打包证书别名*/
"schemes":[
"zhsq"
],
}
复制代码
在APP的首页中 做出响应
document.addEventListener('plusready', function () {
checkArguments();
}, false);
// 判断启动方式
function checkArguments() {
alert(plus.runtime.launcher )
if(plus.runtime.launcher == "default"){
return
}else if(plus.runtime.launcher == "scheme"){
var args = plus.runtime.arguments;
alert(JSON.stringify(args))
if (args) {
arr = args.split("?")[1];
var goodsid = arr.split("=")[1];
setTimeout(function(){
mui.openWindow("goods_detail.html?goodsid="+goodsid);
},1000)
}
}
}
// 处理从后台恢复
document.addEventListener('newintent', function () {
console.log("addEventListener: newintent");
checkArguments();
}, false);
复制代码
在H5中唤起
function gp_down(dev){ //下载链接
if(dev=='android'){
var ifr = document.createElement('iframe');
ifr.src = 'https://zhapp.4hl.cn/static/home/js/H53D548C0_0806114840.apk';
ifr.style.display = 'none';
document.body.appendChild(ifr);
}else if(dev=='ios'){
}
}
function submitFn(){
//判断浏览器
var u = navigator.userAgent;
if(/MicroMessenger/gi.test(u)) {
// 引导用户在浏览器中打开
alert('请在浏览器中打开');
return;
}
var d = new Date();
var t0 = d.getTime();
if(u.indexOf('Android') > -1 || u.indexOf('Linux') > -1){
//Android
var href = "zhsq://startapp?goodsid=428045"
// alert("Android-->zhsq")
// alert(openApp('zhsq://startapp'))
if(openApp(href)){
openApp(href);
}else{
//由于打开需要1~2秒,利用这个时间差来处理--打开app后,返回h5页面会出现页面变成app下载页面,影响用户体验
var delay = setInterval(function(){
var d = new Date();
var t1 = d.getTime();
if( t1-t0<3000 && t1-t0>2000){
// alert('请下载APP');
// window.location.href = " app下载地址 ";
}
if(t1-t0>=3000){
clearInterval(delay);
}
},1000);
}
}else if(u.indexOf('iPhone') > -1){
//IOS
// alert("ios-->zhsq")
// alert(openApp('zhsq://startapp'))
if(openApp('zhsq://startapp')){
openApp('zhsq://startapp');
}else{
var delay = setInterval(function(){
var d = new Date();
var t1 = d.getTime();
if( t1-t0<3000 && t1-t0>2000){
// alert('请下载APP');
// window.location.href = "app下载地址 ";
}
if(t1-t0>=3000){
clearInterval(delay);
}
},1000);
}
}
}
function openApp(src) {
// 通过iframe的方式试图打开APP,如果能正常打开,会直接切换到APP,并自动阻止a标签的默认行为
// 否则打开a标签的href链接
var ifr = document.createElement('iframe');
// alert("openApp-->"+src)
ifr.src = src;
ifr.style.display = 'none';
document.body.appendChild(ifr);
window.setTimeout(function( ){
document.body.removeChild(ifr);
},2000);
}
submitFn()
复制代码