适配安卓APP相应

This commit is contained in:
toogee 2020-05-29 18:17:46 +08:00
parent 68a8a65960
commit df687aa29a
6 changed files with 148 additions and 3 deletions

View File

@ -859,6 +859,22 @@ layui.define(['layer', 'laytpl', 'form', 'element', 'upload', 'util'], function(
if(type === 'bar1'){
//slayer.msg('打开 index.js开启发表新帖的路径');
location.href = articleAdd;
}
//分享
if(type === 'bar2'){
if(navigator.userAgent.indexOf("Html5Plus") > -1) {
//5+ 原生分享
window.plusShare({
title: "my-app-name",//应用名字
content: "分享具体内容",
href: location.href,//分享出去后,点击跳转地址
thumbs: ["/static/share/icon/wx.png"] //分享缩略图
}, function(result) {
//分享回调
});
} else {
//原有wap分享实现
}
}
}
});

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

View File

@ -0,0 +1,117 @@
(function() {
var plusReady = function(callback) {
if(window.plus) {
callback();
} else {
document.addEventListener('plusready', callback);
}
}
var shareServices = {};
var init = function() {
plus.share.getServices(function(services) {
for(var i = 0, len = services.length; i < len; i++) {
shareServices[services[i].id] = services[i];
}
});
};
var isWechatInstalled = function() {
return plus.runtime.isApplicationExist && plus.runtime.isApplicationExist({
pname: 'com.tencent.mm',
action: 'weixin://'
});
};
function share(id, msg, callback) {
var service = shareServices[id];
if(!service) {
callback && callback(false);
return;
}
var _share = function() {
service.send(msg, function() {
plus.nativeUI.toast("分享到\"" + service.description + "\"成功!");
callback && callback(true);
}, function(e) {
plus.nativeUI.toast("分享到\"" + service.description + "\"失败!");
callback && callback(false);
})
};
if(service.authenticated) {
_share(service, msg, callback);
} else {
service.authorize(function() {
_share(service, msg, callback);
}, function(e) {
console.log("认证授权失败");
callback && callback(false);
})
}
};
function openSystem(msg, callback) {
if(plus.share.sendWithSystem) {
plus.share.sendWithSystem(msg, function() {
//TODO 系统分享暂不支持回调
//callback && callback(true);
}, function() {
//TODO 系统分享暂不支持回调
//callback && callback(false);
});
} else {
callback && callback(false);
}
}
var open = function(msg, callback) {
/**
*如下情况直接打开系统分享
* 1未配置微信分享通道
* 2用户手机未安装威胁你
* 3360浏览器下
*/
if(shareServices.weixin && isWechatInstalled() && !/360\sAphone/.test(navigator.userAgent)) {
plus.nativeUI.actionSheet({
title: '分享到',
cancel: "取消",
buttons: [{
title: "微信消息"
}, {
title: "微信朋友圈"
}, {
title: "更多分享"
}]
}, function(e) {
var index = e.index;
switch(index) {
case 1: //分享到微信好友
msg.extra = {
scene: 'WXSceneSession'
};
share('weixin', msg, callback);
break;
case 2: //分享到微信朋友圈
msg.title = msg.content;
msg.extra = {
scene: 'WXSceneTimeline'
};
share('weixin', msg, callback);
break;
case 3: //更多分享
var url = msg.href ? ('( ' + msg.href + ' )') : '';
msg.title = msg.title + url;
msg.content = msg.content + url;
openSystem(msg, callback);
break;
}
})
} else {
//系统分享
var url = msg.href ? ('( ' + msg.href + ' )') : '';
msg.title = msg.title + url;
msg.content = msg.content + url;
openSystem(msg, callback);
}
};
plusReady(init);
window.plusShare = open;
})();

View File

@ -6,10 +6,22 @@
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="keywords" content="{block name="keywords"}关键词{/block}">
<meta name="description" content="{block name="description"}描述{/block}">
<link rel="stylesheet" href="/static/layui/css/layui.css">
<link rel="stylesheet" href="/static/layui/css/layui.css" charset="utf-8">
<link rel="stylesheet" href="/static/res/css/global.css" charset="utf-8">
<style>
/*5+ 引擎环境下自动隐藏无关元素*/
.html5plus .html5plus-hide {
display: none
}
</style>
<script src="/static/share/plusShare.js" type="text/javascript" charset="utf-8"></script>
</head>
<body >
<script>
if(navigator.userAgent.indexOf("Html5Plus") > -1) {
document.body.classList.add("html5plus");
}
</script>
{include file="public/header" /}
{block name="column"}导航{/block}
{block name="content"}内容{/block}

View File

@ -1,4 +1,4 @@
<div class="fly-panel fly-link">
<div class="fly-panel fly-link html5plus-hide">
<h3 class="fly-panel-title">友情链接</h3>
<dl class="fly-panel-main">
{volist name="flinks" id="vo"}

View File

@ -1,4 +1,4 @@
<div class="fly-footer">
<div class="fly-footer html5plus-hide">
<p> Copyright &copy; {:date('Y')}{$sysInfo.copyright|raw}</p>
<p>
<a href="#" target="_blank">站务反馈</a>