请问:Android 判断app是否安装(native.js)
- 发布:2015-07-15 18:32
- 更新:2018-12-10 10:12
- 阅读:15836
最佳回复
var packageName = 'io.dcloud.HBuilder'
var main = plus.android.runtimeMainActivity();
var packageManager = main.getPackageManager();
var PackageManager = plus.android.importClass(packageManager)
var packageInfo = packageManager.getPackageInfo(packageName,PackageManager.GET_ACTIVITIES);
if(packageInfo ){
alert('已安装' + packageName + '')
}
如果获取不到,注意手机权限管理是不是禁用了
s***@gmail.com - www.7di.net
packageName='ccc71.at';
plus.android.importClass('android.content.pm.PackageInfo');
plus.android.importClass('android.content.pm.PackageManager');
var PackageManager = plus.android.runtimeMainActivity().getPackageManager();
var isInstall = plus.android.invoke(PackageManager, 'getLaunchIntentForPackage', packageName);
if(isInstall) {
var pinfo = plus.android.invoke(PackageManager, 'getPackageInfo', packageName, 0)
if(pinfo) {
var versionName = pinfo.plusGetAttribute("versionName");
var versionCode = pinfo.plusGetAttribute("versionCode");
alert('已安装 '+packageName+' versionName: '+versionName+' versionCode: '+versionCode);
}pinfo=null;
} else {
alert('未安装 '+packageName);
}isInstall=packageName=null;
Uncaught android.content.pm.PackageManager$NameNotFoundException: com.jq.printerlabel;at android.app.ApplicationPackageManager.getPackageInfo at Pages/Order/CreateOrder.html:1
爆栈工程师 - 爆栈工程师
//获取其他app的版本号和code
function getAppNameAndCode(packageName) {
plus.android.importClass('java.util.ArrayList');
plus.android.importClass('android.content.pm.PackageInfo');
plus.android.importClass('android.content.pm.PackageManager');
var MainActivity = plus.android.runtimeMainActivity();
var PackageManager = MainActivity.getPackageManager();
//先判断是否已经安装 不然报错
var isInstall = plus.android.invoke(PackageManager, 'getLaunchIntentForPackage', packageName);
var result = null; //返回对象
if(isInstall) {
var pinfo = plus.android.invoke(PackageManager, 'getPackageInfo', packageName, 0)
if(pinfo) {
var versionName = pinfo.plusGetAttribute("versionName"); //版本
var versionCode = pinfo.plusGetAttribute("versionCode"); //code
result = [versionName, versionCode];
}
return result
} else {
return result; //返回空代表未安装
}
}
var a = getAppNameAndCode("com.sina.weibo111");
if(a) {
mui.alert("版本:" + a[0] + " ----- Code:" + a[1])
} else {
mui.alert("未安装!")
}
MMM
这个不好使呀 每次都是未安装。
2015-08-30 19:57
Android_磊子
回复 MMM:判断哪个程序不好使,原生层确实使用此方法进行判断的。
2015-08-31 11:35