兼容各个浏览器唤起下载APP
判断各个浏览器
var ua = navigator.userAgent.toLocaleLowerCase();
function is_android(){
if(ua.match(/android/i)=="android") {
return true;
} else {
return false;
}
}
function is_iphone(){
if(ua.match(/iphone/i)=="iphone") {
return true;
} else {
return false;
}
}
function is_wp(){
if(ua.match(/iemobile/i)=="iemobile") {
return true;
} else {
return false;
}
}
function is_qq(){
if(ua.match(/qq/i)=="qq") {
return true;
} else {
return false;
}
}
function is_weixin(){
if(ua.match(/MicroMessenger/i) == 'micromessenger'){
return true;
}else{
return false;
}
}
function is_weibo(){
if(ua.match(/Weibo/i) == "weibo"){
return true;
}else{
return false;
}
}
function is_chrome(){
if(ua.match(/Chrome/i) == "chrome"){
return true;
}else{
return false;
}
}
function is_chrome_iOS(){
if(ua.match(/crios/i) == "crios"){
return true;
}else{
return false;
}
}
function is_baidu(){
if(ua.match(/baidu/i) == "baidu"){
return true;
}else{
return false;
}
}
function is_uc(){
if(ua.match(/uc/i) == "uc"){
return true;
}else{
return false;
}
}
function is_360(){
if(ua.match(/360/i) == "360"){
return true;
}else{
return false;
}
}
function is_firefox(){
if(ua.match(/firefox/i) == "firefox"){
return true;
}else{
return false;
}
}
function is_xiaomi(){
if(ua.match(/xiaomi/i) == "xiaomi"){
return true;
}else{
return false;
}
}
function is_liebao(){
if(ua.match(/liebaofast/i) == "liebaofast"){
return true;
}else{
return false;
}
}
function is_aoyou(){
if(ua.match(/mxbrowser/i) == "mxbrowser"){
return true;
}else{
return false;
}
}
function is_sogou(){
if(ua.match(/sogou/i) == "sogou"){
return true;
}else{
return false;
}
}
function is_opr(){
if(ua.match(/opr/i) == "opr"){
return true;
}else{
return false;
}
}
function is_safari(){
if(ua.match(/safari/i) == "safari"){
return true;
}else{
return false;
}
}
function is_mx4(){
if(ua.match(/mx4 build/i) == "mx4 build"){
return true;
}else{
return false;
}
}
function is_quark(){
if(ua.match(/quark/i) == "quark"){
return true;
}else{
return false;
}
}
IOS与ANDROID下的各个浏览器唤起和下载
IOS:
var startTime = Date.now();
window.location.href = scheme;
setTimeout(function() {
!window.document.webkitHidden && setTimeout(function() {
var endTime = Date.now();
if ((endTime - startTime) < 3400) {
_requestAction(statisticsDownloadUrl);
window.location.href = downloadUrl;
}
}, 800);
}, 2500);
ANDROID:
var startTime = Date.now();
var ifr = document.createElement("iframe");
ifr.src = scheme;
ifr.style.display = "none";
document.body.appendChild(ifr);
setTimeout(function() {
!window.document.webkitHidden && setTimeout(function() {
var endTime = Date.now();
if ((endTime - startTime) < 3400) {
window.location.href = downloadUrl;
}
}, 800);
}, 2500)
1.IOS
UC无法直接自动唤起只有在页面设置按钮点击后才能唤起
2.ANDROID
小米欧朋可以设置弹窗拉起
if(window.confirm('gogogo')){
window.location.href = scheme;
}
谷歌可以唤起到内置浏览器
intent://『参数』#Intent;scheme=『名称』;package=『App名称』;end
举个栗子:
zhihu://questions/22493147
intent:///#Intent;scheme=miguvideo;package=com.miguvideo.android;end
var schemeParms = 'https://mp.csdn';
var url = schemeParms.split('://')[1];
window.location.href = 'intent://'+url+'#Intent;scheme=http;package=com.android.browser;end';