当前位置: 首页 > news >正文

uniApp应用软件在运行时,不符合华为应用市场审核标准。解决方案合集!

(暂时用不到的也建议收藏一下,因为文章持续更新中···)

最新更改时间:20023-12-10

第一次做App应用开发相信大家一定都遇到过华为应用市场审核的“驳回”!

        有些问题一看就明白可以立马修改,而有一些问题修改意见比较笼统,导致我们反反复复修改提交反反复复被驳回,哈哈真的挺搞心态的。

        今天我做了一些针对难搞的不符合华为应用市场审核标准问题,做了一个解决方案合集,希望大家看完能够早日上架app!

1、同意隐私政策前,应用获取了用户的个人信息(获取应用安装列表,MAC地址,ANDROID ID个人信息)不符合华为应用市场审核标准。

官方给予的修改建议:请在用户同意隐私政策后,再申请获取用户个人信息及权限。

        对于此问题有两个解决方案。

        1. 使用uniApp官方提供的默认的隐私政策配置,这个配置中有一个功能就是用户不同意隐私政策的话你的App就不会获取个人信息(uni官方配置的uni.方法)。大家可以阅读一下配置上:概述 | uni-app官网 (dcloud.net.cn)

        2.不建议, 如果是想要使用自己的隐私政策弹框,需在App.vue中的onLaunch生命周期中配置验证方式,如果用户同意则处理接下来的事件:

/* 用来验证当前用户是否同意了隐私政策 */
plus.runtime.isAgreePrivacy() 
/* 用户同意了隐私政策 */
plus.runtime.agreePrivacy();

2、经检测发现,您的应用中集成了com.igexin.push(个推;个验;个像), com.g.gysdk(个推;个验;个像), com.getui.gs(个推;个验;个像)等SDK,但未在应用内的隐私政策/在AppGallery Connect上提交的隐私政策内容中进行明示,不符合华为应用市场审核标准。

        修改建议:请确保应用内包含的所有SDK均已在应用内的隐私政策/在AppGallery Connect上提交的隐私政策内逐一罗列明示,并说明SDK收集使用的个人信息以及使用目的。请排查应用内包含的所有SDK,并在隐私政策内进行规范化的说明,以保证隐私检测准确性。

com.getui(个推;个数应用统计,个像,个验)

第三方公司名称:每日互动股份有限公司

使用目的 :用于消息推送,获取设备标识,实现精准推送及订单信息的推送,并进行关联自启动,仅限于本APP内使用

使用场景:推送消息/订单时使用

集成方式:APP初始化SDK,SDK通过自己的逻辑调用系统的API获取

数据类型:设备信息(IMEI、ANDROID_ID、DEVICE_ID、IMSI)、应用已安装列表、网络信息

调用权限及获取信息: 获取网络状态、访问Wi-Fi状态、设备MAC地址、获取BSSID,SSID个人信息、读取手机状态和身份

官网链接:https://www.getui.com

隐私政策:https://www.getui.com/privacy

但是还有几个小细节需要注意下,这些获取权限的敏感信息需要您使用 加粗 鲜亮颜色 等等进行明示

3、您的应用在“后台状态”下获取了用户的个人信息(BSSID,SSID),且未在应用内的隐私政策/在AppGallery Connect上提交的隐私政策网址中进行说明,不符合华为应用市场审核标准。

        修改建议:请在应用内的隐私政策/在AppGallery Connect上提交的隐私政策网址中,说明应用将在“后台状态“下收集用户的个人信息,并征得用户的明示同意。

        这条也是隐私政策问题,在隐私政策上明示清楚即可

为确保本应用处于关闭或后台运行状态下,您可正常接收到顾客的下单信息,避免消息遗漏,我们会使用 APP 的自启动能力。为了满足法律法规及提供服务的基本要求,保障您的账号安全与系统运行安全以及更好的使用我们的产品,提升产品问题排查效率,我们会收集您的日志信息、订单信息、浏览及搜索信息、位置信息、设备信息,问题上报描述,联系电话以及您在使用服务过程中所提交的任何文字、照片、视频信息并将您在使用我们关联方的某项服务中提供的信息结合起来,进行综合统计、分析用来向您提供便捷服务和信息展示,包括在 App 页面向您推送消息通知,通过短信、App、电子邮件等给您发送推送消息、推广信息或展示产品/服务相关商业广告,通过电话进行回访、向您提供信息咨询等服务或邀请您参与服务、产品或功能有关的客户调研。

4、应用内的隐私政策/在AppGallery Connect上提交的隐私政策内容中进行明示,不符合华为应用市场审核标准。

        修改建议:请确保应用内包含的所有SDK均已在应用内的隐私政策/在AppGallery Connect上提交的隐私政策内逐一罗列明示,并说明SDK收集使用的个人信息以及使用目的。请排查应用内包含的所有SDK,并在隐私政策内进行规范化的说明,以保证隐私检测准确性。

想必各位小伙伴们肯定遇到过很多关于SDK声明问题,我也在发布了一篇所有第三方SDK的声明方式合计,算是比较全的了,大家可以参考参考。

第三方SDK声明入口:SDK,但未在应用内的隐私政策/在AppGallery Connect上提交的隐私政策内容中进行明示,不符合华为应用市场审核标准。-CSDN博客

5、未见向用户告知权限申请的目的,向用户索取(存储、相机、电话)等权限,不符合华为应用市场审核标准。

        这一条想必是大家绝对绝对会遇到的吧,说明也是比较笼统。

修改建议:APP在调用终端权限时同步告知用户申请该权限的目的!

这条我们的app在调用存储、相机、电话等权限时需要同步告知用户,请大家看下示例图:

我针对这条还专门出了一篇文章嘞,其中包含了代码示例,拷贝代码就能用了非常方便,大家可以访问链接:uniApp应用软件在运行时,未见向用户告知权限申请的目的,向用户索取(存储、相机、电话)等权限,不符合华为应用市场审核标准。-CSDN博客

(今天到这里先结束了,有其他发现的小伙伴们可以随时向我提问,我会进行钻研并且总结一下)

相关文章:

uniApp应用软件在运行时,不符合华为应用市场审核标准。解决方案合集!

(暂时用不到的也建议收藏一下,因为文章持续更新中) 最新更改时间:20023-12-10 第一次做App应用开发相信大家一定都遇到过华为应用市场审核的“驳回”! 有些问题一看就明白可以立马修改,而有一些问题修改意…...

c#编码技巧(十五):新语法糖record深入分析

c#编码技巧(十四):新语法糖record深入分析 从 C# 9 开始新增了一个关键字record,用于封装数据。 record实质是微软提供的一个语法糖,因很多开源项目都用到了这个关键字,说明这个语法糖比较实用。 那么这个record类型和普通class类…...

Java IO流(五)(字符集基础知识简介)

字符集 计算机的存储规则(英文字符) 常见字符集介绍 a.GB2312字符集:1980年发布,1981年5月1日实施的简体中文汉字编码国家标准。收录7445个图形字符,其中包括6763个简体汉字 b.BIG5字符集:台湾地区繁体中…...

周周爱学习之Redis重点总结

redis重点总结 在正常的业务流程中,用户发送请求,然后到缓存中查询数据。如果缓存中不存在数据的话,就会去数据库查询数据。数据库中有的话,就会更新缓存然后返回数据,数据库中也没有的话就会给用户返回一个空。 1.缓…...

免费的SEO外链发布工具,提升排名的利器

互联网已经成为信息传播和商业发展的重要平台。而对于拥有网站的个人、企业来说,如何让自己的网站在搜索引擎中脱颖而出?SEO(Search Engine Optimization)作为提高网站在搜索引擎中排名的关键手段. 什么是SEO外链? S…...

腾讯字节常考的linux命令

1 ps 1.1 ps -ef 有哪些字段 ps -ef 命令在Unix/Linux系统中用于显示当前运行的进程。输出的字段通常包括: UID:启动进程的用户ID。PID:进程ID。PPID:父进程ID。C:CPU利用率。STIME:进程启动时间。TTY&a…...

JAVA后端自学技能实操合集

JAVA后端自学技能实操 内容将会持续更新中,有需要添加什么内容可以再评论区留言,大家一起学习FastDFS使用docker安装FastDFS(linux)集成到springboot项目中 内容将会持续更新中,有需要添加什么内容可以再评论区留言,大家一起学习 FastDFS 组名:文件上传后所在的 st…...

C++ 关联容器

关联容器 关联容器支持高效的关键字查找和访问。 两个主要的关联容器(associative container)类型是 map 和 set。 map 中的元素是一些关键字——值对。 关键字起到索引的作用,值则表示与索引相关联的数据。 set 中的每个元素只包含一个关键…...

ES6之函数新增的扩展

参数 ES6允许为函数的参数设置默认值 function log(x, y World) {console.log(x, y); }console.log(Hello) // Hello World console.log(Hello, China) // Hello China console.log(Hello, ) // Hello函数的形参是默认声明的,不能使用let或const再次声明 functi…...

postgresql安装部署(docker版本)

1.在线部署 创建数据库存储目录 mkdir /home/pgdata创建容器 docker run --name postgresql --restartalways -d -p 5432:5432 -v /home/pgdata:/var/lib/postgresql/data --shm-size10g -e POSTGRES_PASSWORD密码 postgis/postgis:12-3.2-alpine–name为设置容器名称 -d表…...

【Python/Java/C++三种语言】20天拿下华为OD笔试之【位运算】2023B-出错的或电路【欧弟算法】全网注释最详细分类最全的华为OD真题

文章目录 题目描述与示例题目描述输入描述输出描述示例一输入输出说明 示例二输入输出说明 解题思路代码PythonJavaC时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目描述与示例 题目描述 某生产门电路的厂商发现某一批次的或门电路不稳定,具体现象为计…...

vscode 编译运行c++ 记录

一、打开文件夹,新建或打开一个cpp文件 二、ctrl shift p 进入 c/c配置 进行 IntelliSense 配置。主要是选择编译器、 c标准, 设置头文件路径等,配置好后会生成 c_cpp_properties.json; 二、编译运行: 1、选中ma…...

错题总结(四)

1.【一维数组】输入10个整数&#xff0c;求平均值 编写一个程序&#xff0c;从用户输入中读取10个整数并存储在一个数组中。然后&#xff0c;计算并输出这些整数的平均值。 int main() {int arr[10];int sum 0;for (int n 0; n < 10; n){scanf("%d", &arr…...

ORACLE使用Mybatis-plus批量插入

ORACLE使用mybatis-plus自带的iservice.saveBatch方法时&#xff0c;会报DML Returing cannot be batch错误&#xff1a; 推测原因是oracle不支持insert into table_name (,) values &#xff08;&#xff0c;&#xff09;,&#xff08;&#xff09;的写法。且oracle不会自动生…...

vue,uniapp的pdf等文件在线预览

vue&#xff0c;uniapp文件在线预览方案&#xff0c;用了个稍微偏门一点的方法实现了 通过后端生成文件查看页面&#xff0c;然后前端只要展示这个网页就行&#xff0c;uniapp就用web-view来展示&#xff0c;后台系统就直接window.open()打开就行 示例查看PDF文件&#xff0c;…...

SpringBoot 项目 Jar 包加密,防止反编译

1场景 最近项目要求部署到其他公司的服务器上&#xff0c;但是又不想将源码泄露出去。要求对正式环境的启动包进行安全性处理&#xff0c;防止客户直接通过反编译工具将代码反编译出来。 2方案 第一种方案使用代码混淆 采用proguard-maven-plugin插件 在单模块中此方案还算简…...

DockerFile中途执行出错的解决办法

DockerFile中途执行出错的解决办法 你们是否也曾经因为DockerFile中途执行出错,而对其束手无策?总是对docker避之不及! 但是当下载的源码运用到了docker,dockerFile 执行到一半,报错了怎么办? 现状 那么当DockerFile执行一半出错后,会产生什么结果呢? 如图可知,生成…...

Word插件-好用的插件-一键设置字体--大珩助手

常用字体 整理了论文、公文常用字体 整理了常用的论文字体&#xff0c;可一键设置当前节或选择的文字的字体 字体设置 包含字体选择、字体颜色 特殊格式 包含首字下沉、段落分栏、统一宽度、双行合一、上标切换、下标切换、转为全角、转为半角、挖词填空、当前日期、大写金…...

【MODBUS】Modbus主站云端服务器和边缘设备部署区别

Modbus主站作为云端服务器&#xff1a; 云端服务器作为主站&#xff1a; 在这种部署方式中&#xff0c;云端服务器充当Modbus通信的主站&#xff0c;负责向不同的Modbus从站发起请求&#xff0c;并处理响应。云端服务器通常与其他云服务一起运行&#xff0c;可以在云平台上实现…...

hbuiler中使用npm安装datav

注&#xff1a;datav边框样式目前使用时&#xff1a;适用于网页&#xff0c;不适用于app 1、先安装node 安装、配置Node路径 2、为Node配置环境变量 3、在hbuilder的设置中填写node的路径 配置 4、打开cmd输入npm install jiaminghi/data-view 安装dataV&#xff0c;&…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容&#xff0c;我认为是AI开发里面非常重要的内容。它在AI开发里无处不在&#xff0c;当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗"&#xff0c;或者让翻译模型 "将这段合同翻译成商务日语" 时&#xff0c;输入的这句话就是 Prompt。…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》

引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

(转)什么是DockerCompose?它有什么作用?

一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用&#xff0c;而无需手动一个个创建和运行容器。 Compose文件是一个文本文件&#xff0c;通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统

目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索&#xff08;基于物理空间 广播范围&#xff09;2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

排序算法总结(C++)

目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指&#xff1a;同样大小的样本 **&#xff08;同样大小的数据&#xff09;**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...