zoukankan      html  css  js  c++  java
  • UNI-APP常用方法

    1、判断第三方程序是否已存在

    Boolean plus.runtime.isApplicationExist(appInf);

    如果第三方程序已安装则返回true,未安装则返回false。

    appInf: ApplicationInf ) 必选 要判断第三方程序的描述信息

    Android平台需要通过设置appInf的pname属性(包名)进行查询。 iOS平台需要通过设置appInf的action属性(Scheme)进行查询,在iOS9以后需要添加白名单才可查询,在manifest.json文件plus->distribute->apple->urlschemewhitelist节点下添加(如urlschemewhitelist:["weixin"]).

    // 判断第三方程序(微信) 是否安装
    function checkApp(){
        if(plus.runtime.isApplicationExist({pname:'com.tencent.mm',action:'weixin://'})){
            console.log("微信应用已安装");
        }else{
            console.log("微信应用未安装");
        }
    }
    判断其他应用是否安装,可以用对应的pname和action来判断。以下是一些常用平台的pname和action。
    
    平台 | pname | action
    -|-|- 微信 | com.tencent.mm | weixin:// | QQ |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:
    // |

     http://www.html5plus.org/doc/zh_cn/runtime.html#plus.runtime.isApplicationExist

    2、判断APP强制更新弹层

    // 接口获取当前版本信息
    viewAppConfigApi().then((res) => { if(res.code == 1){   // app当前版本
        plus.runtime.getProperty(plus.runtime.appid,(wgtinfo)
    =>{ versionNow = wgtinfo.version; if(verisonPlate !== versionNow){ // 版本号不同了 if(plate == 'android' && plateformConfig.isAndroidEnabled == 1){ // 安卓已上架 uni.hideTabBar(); this.showUpdate = true; }else if(plate == 'ios' && plateformConfig.isIosEnabled == 1){ // IOS已上架 uni.hideTabBar(); this.showUpdate = true; }else{ this.showUpdate = false; uni.showTabBar(); } }else{ this.showUpdate = false; uni.showTabBar(); } }) } })

    点击立即更新跳转

    if(plate == 'android'){
                        this.isLoading = true;
                        uni.downloadFile({
                            url: this.downLoadUrl,
                            success: data => {
                                this.isLoading = false;
                                if (data.statusCode === 200) { 
                                    plus.runtime.install(data.tempFilePath, {  
                                        force: false  
                                    }, function() {
                                        plus.runtime.restart();  
                                    });  
                                 }  
                            }
                        })
                    }else if(plate == 'ios'){
                        //在App Store Connect中的App Store下的app信息,可找到appleId
                        let appleId= 'K64HH6LH8M';
                        plus.runtime.launchApplication({
                            action: `itms-apps://itunes.apple.com/cn/app/id${appleId}?mt=8`
                        }, function(e) {
                            console.log('Open system default browser failed: ' + e.message);
                        });
                    }
  • 相关阅读:
    前端构建工具gulpjs的使用介绍及技巧
    mysql /*! 50100 ... */ 条件编译
    linux 硬连接与软连接
    Linux 数据流重定向
    倒排索引
    sed 常用的功能
    linux mysql安装
    mysql help
    linux 命令行选项
    mysql 主主复制的配置流程
  • 原文地址:https://www.cnblogs.com/haonanZhang/p/13742164.html
Copyright © 2011-2022 走看看