超级赛亚人
超级赛亚人
  • 发布:2016-01-06 14:08
  • 更新:2016-07-25 18:16
  • 阅读:18825

如何判断 手机上是否安装 某个app 比如百度地图?

分类:HTML5+

请问,如何安卓跟IOS 分别如何判断 手机上是否安装 某个app 比如百度地图?

2016-01-06 14:08 负责人:无 分享
已邀请:
DCloud_IOS_XTY

DCloud_IOS_XTY

iOS:
可以使用NJS实现,首先到百度云平台查询URL Types,然后调用canOpenURL测试

var UIApplication = plus.ios.importClass("UIApplication");  
var NSURL = plus.ios.importClass("NSURL");  

var app = UIApplication.sharedApplication();  
var bdScheme = NSURL.URLWithString("baidumap://");  
var install = app.canOpenURL(bdScheme);  

plus.ios.deleteObject(bdScheme);  
plus.ios.deleteObject(app);
  • q_q

    用这个代码,无论是否安装install都是一串数字,怎么判断啊?

    2016-12-30 11:36

  • 2***@qq.com

    我也是这个问题,求解答呀

    2017-03-03 11:56

  • DCloud_IOS_XTY

    升级到最新版本试试

    2017-03-03 17:23

  • 4***@qq.com

    没效果呢,一直是未安装

    2017-07-05 11:08

  • 一个大老鼠

    你好,我使用这段代码遇到了一个问题,本地调试的时候一切正常,可以争取判断百度、高德地图是否安装,但是一到云打包就判断不了是否安装了

    2018-08-26 16:41

  • 一个大老鼠

    回复 一个大老鼠: 经过确认原因是因为 应用权限的原因,需要在 mainfest 中配置权限

    2018-08-31 13:40

  • 不是就说

    回复 一个大老鼠:请问是什么权限问题啊?我添加了白名单还是判断不了啊(:з」∠)

    2019-02-28 16:48

  • 旧时光

    回复 不是就说: 请问怎么加白名单

    2020-01-16 18:40

DCloud_UNI_FXY

DCloud_UNI_FXY

安卓:

try {  
var packageName = '';//百度地图的包名  
        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) {  
//已安装  
        } else {  
//未安装  
        }  
    } catch (e) {  
//未安装  
    }
保级队球迷

保级队球迷

请问安卓系统的如何检测是否安装百度地图?

  • 2***@qq.com

    请问这个解决了吗

    2017-06-28 16:51

保级队球迷

保级队球迷

非常感谢,解决了我的问题!目前用com.baidu.BaiduMap作为百度地图的包名,com.autonavi.minimap为高德地图,可用,提供给网友参考

Coulson

Coulson

  1. 如果需要判断的应用程序可能有很多种,比如生活类-携程,又或者是游戏类-中国象棋,等等,那么
    var bdScheme = NSURL.URLWithString("baidumap://"); 中的string应该填什么?又怎么才能知道要检测应用对应的string呢?
    2.如何检测应用的运行时间?
j***@163.com

j***@163.com

请问一下在ios上执行了截图的代码,返回到上个html页面就卡死了,点任何地方都没有反应,这个问题怎么解决?

  • 上官萧晨

    请问我要是判断多种地图软件,怎么写了

    2018-05-06 23:16

该问题目前已经被锁定, 无法添加新回复