uni-app 针对 plus.runtime.install 在安卓9.0+上无法执行的解决方案

Posted 地表最强菜鸡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了uni-app 针对 plus.runtime.install 在安卓9.0+上无法执行的解决方案相关的知识,希望对你有一定的参考价值。

先确保你的IDE使用的是HBuilderX, 老HBuilder用户请升级HBuilderX

云打包配置

云打包时配置manifest.json将targetSdkVersion改为26或更高 最高建议28。
5+应用:
http://ask.dcloud.net.cn/article/94

​​

uniapp:
https://uniapp.dcloud.io/collocation/manifest

如果提交云端打包后调用plus.runtime.install无法安装apk文件,请添加以下权限

<uses-permission android:name="android.permission.INSTALL_PACKAGES"/>  
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>

如何添加权限?可参考

TIPS:

云打包配置修改完毕后。请重新提交云端打包。生成你的APK,该APK才有调用plus.runtime.install安装APK的能力。

离线打包配置

  1. 将build.gradle中的targetSdkVersion调到26或者更高。

  2. 在Androidmanifest.xml添加provider节点,将里面的io.dcloud.HBuilder改成自己应用的包名。

<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>  

在 Androidmanifest.xml 中添加权限。

注:最新版SDK已经将权限加入基础库里面使用时请下载最新版SDK

<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>  

配置完权限请重新编译生成APK。该APK才有调用 plus.runtime.install 安装APK的能力。 

以上是关于uni-app 针对 plus.runtime.install 在安卓9.0+上无法执行的解决方案的主要内容,如果未能解决你的问题,请参考以下文章

uni-app 针对 plus.runtime.install 在安卓9.0+上无法执行的解决方案

uni-app 封装请求

uni-app 的更新及碰到的问题

uni-app添加自定义底部导航栏,实现根据权限动态切换底部栏目的功能

uni-App iOS首次安装允许网络请求后页面空白

Vue 前端uni-app多环境配置部署服务器的问题