1、判断第三方程序是否已存在
Boolean plus.runtime.isApplicationExist(appInf);
(1)说明:如果第三方程序已安装则返回true,未安装则返回false。
(2)参数:appInf: ( ApplicationInf ),必选,要判断第三方程序的描述信息
关于 ApplicationInf 参数,官方也有详细描述,查看: http://www.html5plus.org/doc/zh_cn/runtime.html#plus.runtime.ApplicationInf
Android平台需要通过设置 appInf 的 pname 属性(包名)进行查询。
iOS平台需要通过设置 appInf 的 action 属性(Scheme)进行查询,
在iOS9以后需要添加白名单才可查询,在manifest.json文件plus->distribute->apple->urlschemewhitelist节点下添加(如urlschemewhitelist:[“weixin”])
(3)返回值:Boolean ,第三方程序已安装则返回true,否则返回false。
2、常用平台
判断其他应用是否安装,可以用对应的pname和action来判断。以下是一些常用平台的pname和action。
平台 | pname | action |
微信 | com.tencent.mm | weixin:// |
com.tencent.mobileqq | mqq:// | |
新浪微博 | com.sina.weibo | sinaweibo:// |
淘宝 | com.taobao.taobao | taobao:// |
支付宝 | com.eg.android.AlipayGphone | alipay:// |
京东 | com.jingdong.app.mall | openApp.jdMobile:// |
优酷 | com.youku.phone | youku:// |
高度地图 | com.autonavi.minimap | iosamap:// |
百度地图 | com.baidu.BaiduMap | baidumap:// |
3、代码示例
// 判断第三方程序(微信) 是否安装
function checkApp(){
if(plus.runtime.isApplicationExist({pname:'com.tencent.mm',action:'weixin://'})){
console.log("微信应用已安装");
}else{
console.log("微信应用未安装");
}
}