zoukankan      html  css  js  c++  java
  • 关于H5+实现APP检查自动更新与 调用 plus.runtime.install 弹出不了安装界面问题

    手机主流通用远程更新 APP思路

    1. 对比当前APP与服务器上的json的版本号
    2. app调用 downloader 下载远程APP
    3. app调用 runtime.insatll 安装远程APP

    可能会遇到的细节问题:

    1. 下载APP时需要挂在后台下载,不影响当前用户操作,APP下载完成自动弹出安装
    2. 安装新的APP时,需要把当前运行的APP进行 runtime.quit
    3. 如果用户下载完没安装,下次检查更新时无需下载,直接安装上次下载完的apk即可
    4. 安装成功后,自动删除安装包。

    调用 plus.runtime.install 弹出不了安装界面问题

    参考: https://ask.dcloud.net.cn/article/id-35703__page-9

    使用 HbuilderX 离线打包方式,app实现远程下载调用 plus.runtime.install 安装程序时,能显示安装成功,但是弹不出安装界面。

    1. 将build.gradle中的targetSdkVersion调到26或者更高。
    2. 在Androidmanifest.xml 的application子节点下添加provider节点,将里面的XXXX.XXX.XX改成 build.gradle 里的 applicationId。
      <provider  
            android:name="io.dcloud.common.util.DCloud_FileProvider"  
            android:authorities="XXXX.XXX.XX(当前的应用包名).dc.fileprovider"  
            android:exported="false"  
            android:grantUriPermissions="true">  
            <meta-data  
                android:name="android.support.FILE_PROVIDER_PATHS"  
                android:resource="@xml/dcloud_file_provider" />  
        </provider>  
    
    1. 在Androidmanifest.xml 根节点中添加权限
    <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>  
    

    注意: XXXX.XXX.XX 指的是 build.gradle 里的 applicationId 不要和安装的包名混淆了

    1. 可以在生成离线打包前,配置 manifest.json 权限

    1. 手机运行第三方程序安装

    2. 重新编译打包即可弹出安装界面

  • 相关阅读:
    课件的引子
    用nc做网络压力测试
    分布式计算学习笔记
    静态库 .a 转成共享库 .so
    nmon用法
    eclipse debug URLClassPath.getLoader(int) file
    sodu 命令场景分析
    俩孩随笔
    深度学习丨深度学习中GPU和显存分析
    语义分割丨DeepLab系列总结「v1、v2、v3、v3+」
  • 原文地址:https://www.cnblogs.com/demonxian3/p/13632871.html
Copyright © 2011-2022 走看看