美文网首页
Cordova判断iPhone百度地图App是否安装

Cordova判断iPhone百度地图App是否安装

作者: answer6 | 来源:发表于2018-01-18 14:20 被阅读0次

    App中难免会用到第三方导航,使用前就要判断用户是否安装这个App。
    参考


    1. 插件准备
    - cordova plugin add cordova-plugin-appavailability --save    //检测是否存在第三方App  
    - cordova plugin add cordova-plugin-device                    //检测基本平台信息
    
    1. config.xml 设置(未做必须测试
    //ios  
    <allow-intent href="baidumap://*/*" />  
    //android  
    <allow-intent href="bdapp://*/*" />  
    
    1. 平台判断(android和ios需要区分
     if(device.platform === 'iOS') {  
              //ios  这里只做iPhone的判断 不考虑android 这一步不写也行 
          }  
          else if(device.platform === 'Android') {  
              //android  
          }  
    
    1. 检测方法
    function checkButton(){
        // Don't forget to add the cordova-plugin-device plugin for `device.platform`  
          if(device.platform === 'iOS') {  
              scheme = 'baidumap://';  //   注意这个地方和config.xml刚刚添加的
          }  
          else if(device.platform === 'Android') {  
              scheme = 'com.baidu.BaiduMap';  
          }  
      
          appAvailability.check(  
              scheme,       // URI Scheme or Package Name  
              function() {  // Success callback  
                  alert(scheme + ' is available :)');  
                  var sApp = startApp.set("baidumap://");  
                  sApp.start(function() { /* success */  
                    alert("OK");  
                  }, function(error) { /* fail */  
                    alert(error);  
                  });  
      
              },  
              function() {  // Error callback  
                  alert(scheme + ' is not available :(');  
              }  
          );  
    }
    
    1. 对于ios9+需要配置白名单,否则检测无效:!!!
    在`resource`文件夹找到info.plist 添加如下图所示
    
    如图 添加key-value

    还不是美滋滋

    相关文章

      网友评论

          本文标题:Cordova判断iPhone百度地图App是否安装

          本文链接:https://www.haomeiwen.com/subject/utcwoxtx.html