uniapp上传华为应用市场,您的应用提示获取手机存储敏感权限,用户不同意时强制退出应用
问题背景
uniapp云打包后生成apk,第一次启动会申请存储权限,用户点击不同意会退出app,而且这个申请是uniapp基座包做的,和开发者写的代码无关,是uniapp基座运行起来就会申请这个权限。
问题原因
uniapp支持增量更新,想要支持热更新就需要存储权限,但是wgt热更新是应用市场不乐见的。
解决方案
在manifest.json中打开源码视图,在‘distribute’下添加
"permissionPhoneState" : {"request" : "once","prompt" : "为保证您正常、安全地使用,需要获取设备识别码(部分手机提示为获取手机号码)使用权限,请允许。"},"permissionExternalStorage" : {"request" : "once","prompt" : "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。"},
本人完整distribute节点如下
/* 应用发布信息 */"distribute" : {/* android打包配置 */"android" : {"permissionPhoneState" : {"request" : "once","prompt" : "为保证您正常、安全地使用,需要获取设备识别码(部分手机提示为获取手机号码)使用权限,请允许。"},"permissionExternalStorage" : {"request" : "once","prompt" : "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。"},"autoSdkPermissions" : true,"permissions" : ["<uses-feature android:name=\"android.hardware.camera\"/>","<uses-feature android:name=\"android.hardware.camera.autofocus\"/>","<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>","<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>","<uses-permission android:name=\"android.permission.CALL_PHONE\"/>","<uses-permission android:name=\"android.permission.CAMERA\"/>","<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>","<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>","<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>","<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>","<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>","<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>","<uses-permission android:name=\"android.permission.READ_CONTACTS\"/>","<uses-permission android:name=\"android.permission.READ_EXTERNAL_STORAGE\"/>","<uses-permission android:name=\"android.permission.READ_LOGS\"/>","<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>","<uses-permission android:name=\"android.permission.USE_FINGERPRINT\"/>","<uses-permission android:name=\"android.permission.VIBRATE\"/>","<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>","<uses-permission android:name=\"android.permission.WRITE_CONTACTS\"/>","<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"/>","<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"]},/* ios打包配置 */"ios" : {// "UIBackgroundModes" : [ "audio" ],"urlschemewhitelist" : [ "baidumap", "iosamap" ],"privacyDescription" : {"NSPhotoLibraryUsageDescription" : "便于您上传头像、入职资料等","NSPhotoLibraryAddUsageDescription" : "便于您上传头像、入职资料等","NSCameraUsageDescription" : "便于您上传头像、入职资料等"},"idfa" : false},/* SDK配置 */"sdkConfigs" : {"ad" : {},"geolocation" : {},"push" : {"unipush" : {}},"share" : {}},"splashscreen" : {"ios" : {"iphone" : {"portrait-896h@3x" : "res/drawable-xhdpi/ios.png","landscape-896h@3x" : "res/drawable-xhdpi/ios.png","iphonex" : "res/drawable-xhdpi/ios.png","iphonexl" : "res/drawable-xhdpi/ios.png","portrait-896h@2x" : "res/drawable-xhdpi/ios.png","landscape-896h@2x" : "res/drawable-xhdpi/ios.png","retina55" : "res/drawable-xhdpi/ios.png","retina55l" : "res/drawable-xhdpi/ios.png","retina47" : "res/drawable-xhdpi/ios.png","retina47l" : "res/drawable-xhdpi/ios.png","retina40" : "res/drawable-xhdpi/ios.png","retina40l" : "res/drawable-xhdpi/ios.png","retina35" : "res/drawable-xhdpi/ios.png"},"storyboard" : "static/image/recrewards_launch.zip"},"android" : {"hdpi" : "res/drawable-xhdpi/splash3.9.png","xhdpi" : "res/drawable-xhdpi/splash2.9.png","xxhdpi" : "res/drawable-xhdpi/splash1.9.png"},"iosStyle" : "storyboard"},"icons" : {"android" : {"hdpi" : "static/image/7272@2x.png","xhdpi" : "static/image/9696@2x.png","xxhdpi" : "static/image/144144@2x.png","xxxhdpi" : "static/image/192192@2x.png"},"ios" : {"appstore" : "static/image/10241024@2x.png","iphone" : {"app@2x" : "static/image/120120@2x.png","app@3x" : "static/image/180180@2x.png","spotlight@2x" : "static/image/8080@2x.png","spotlight@3x" : "static/image/120120@2x.png","settings@2x" : "static/image/5858@2x.png","settings@3x" : "static/image/8787@2x.png","notification@2x" : "static/image/4040@2x.png","notification@3x" : "static/image/6060@2x.png"},"ipad" : {"app" : "static/image/7676@2x.png","app@2x" : "static/image/152152@2x.png","proapp@2x" : "static/image/167167@2x.png","spotlight" : "static/image/4040@2x.png","spotlight@2x" : "static/image/8080@2x.png","settings" : "static/image/2929@2x.png","settings@2x" : "static/image/5858@2x.png","notification" : "static/image/2020@2x.png","notification@2x" : "static/image/4040@2x.png"}}}},
保存之后,云打包生成apk,再次安装启动的时候还是会申请权限,但是拒绝后不会出现,强制退出应用。
上传应用市场,完美通过。
uniapp上传华为应用市场,您的应用提示获取手机存储敏感权限,用户不同意时强制退出应用相关推荐
- 记录uniapp 离线包上传华为应用市场提示appkey 未配置问题
我们项目是uniapp 打的离线包,上架应用市场,只有华为提示用 未配置appkey或配置错误,我们公司是有几十个类似项目,就这个被拒了,配置都是按照官方做的,没有问题,我们测试也没有问题,只有华为官 ...
- App上传应用市场的步骤有哪些能上传哪些应用市场
App上传应用市场的步骤有哪些能上传哪些应用市场 越来越多的企业都开发了自己的APP,很多人会疑惑如何上传APP,山东临软教你如何上传APP,需要哪些流程呢? 一.上传APP方法: 1.应用市场注册开 ...
- uniapp上传头像
<view><van-fieldlabel="头像"readonly="true"@tap="openChooseImg" ...
- uni-app上传头像base64转码
uni-app上传头像base64转码 首先需要调起相册,使用 uni.chooseImage 方法选择相册,点击相册里面的图片, 确定可以选择图片并获取到图片的路径之后,uni-app官网有插件可以 ...
- uniapp 上传指定jpg,png格式图片
// 上传图片前事件chooseImage: async function() {if (this.imageList.length === 6) {let isContinue = await th ...
- 利用串口网络助手上传数据、图片到OneNet平台以及获取数据(HTTP)
利用串口网络助手上传数据.图片到OneNet平台以及获取数据(HTTP) 使用网络助手连接OneNet服务器 HTTP上传数据至OneNet 获取数据 上传图片至OneNet 使用网络助手连接OneN ...
- react+Ts+批量上传华为云OBS
文章目录 前言 一.华为云OBS 二.开发步骤 1.使用npm安装(推荐) 2.使用源码安装 3.直接上代码(npm方式) 4.示例图 5.12.22 新增进度条优化 6.如果限制单个大文件上传进度条 ...
- Git上传华为云(基于SSH公钥免密)
文章目录 1. 华为云建立代码托管仓库 2. 建立仓库 3. 生成SSH公钥(SSH方式是免密提交) 4. 将本地代码上传到远程仓库华为云上 5. 需要添加多个远程库(gitee.GitHub等) 6 ...
- uni-app 上传识别身份证信息
最近在做一款小程序,需要用到上传识别身份证的功能,但是本人对uni-app 不是特别熟悉,求大神帮忙!!! 万分感谢!!!
最新文章
- java for 执行顺序_java – @BeforeMethod和继承 – 执行顺序(TestNG)
- 【机器学习】因子分解机(FM) 原理及在召回中的应用(python实现)
- 2017二级c语言题库贴吧,2017二级c语言题库
- qPCR引物设计经验教程
- linux sox录音时间控制,Linux 对音频万能处理的命令——SOX
- laravel很慢_Laravel网站打开速度优化的方法汇总
- 获取电脑ip并输入微信发送
- 微信文件用qq浏览文件服务器,原来微信和QQ的文件是可以相互传输的!现在才知道,真是太可惜了...
- 餐厅预订系统有哪些?餐厅预订系统怎么选择?
- Linux网络编程必备的POSIX API的细节
- java中虚函数_虚函数
- 读书笔记(被讨厌的勇气一)
- 下载网站特有字体图标方法
- mysql scn_ORACLE SCN的概念
- 小鸡模拟器android怎么玩,安卓小鸡模拟器运行总结~
- BLM战略管理的五条策略性建议
- Field xxxxDAO in com.nero.hua.service.impl.LoginServiceImpl required a bean of type
- STemWin学习笔记——窗口小工具(控件)
- java实现将汉字转为拼音
- 微信小程序开发:微信小程序生命周期总结
热门文章
- 汽车整车行业PLM解决方案
- 大牛很通俗地介绍《信号与系统》
- 计算机基础土星,2012年一级B笔试模拟343
- OpenWRT-Wifidog之利用Luci认证
- iOS https 自制证书 单向 双向 验证,以及服务器(Nginx)配置
- C语言数码管是共阴共阳程序,成功C DIY 单片机(2)51单片机直接驱动共阴极数码管...
- java指定日期计算一年内第几天和给出一年内第几天算出指定日期
- Win7下硬盘安装Ubuntu12.04双系统
- 为您揭秘当今直播源码为何如此火爆
- 算法实践:数独(3)