当前位置:网站首页>Cordova plugin device obtains the device information plug-in, which causes Huawei to fail the audit
Cordova plugin device obtains the device information plug-in, which causes Huawei to fail the audit
2022-07-03 00:40:00 【kenick】
1. cause
It was found that , Your application has the ability to get users 【ANDROID ID】 Sensitive information behavior , And not in the application privacy policy / stay AppGallery Connect The privacy policy website submitted on , It does not meet Huawei's application market audit standards .
2. analysis
The stack call information obtained from Huawei is :
"stackTrace":[
"org.apache.cordova.device.Device.getUuid(Device.java:112)",
"org.apache.cordova.device.Device.initialize(Device.java:58)",
"org.apache.cordova.CordovaPlugin.privateInitialize(CordovaPlugin.java:57)",
"org.apache.cordova.PluginManager.getPlugin(PluginManager.java:171)",
"org.apache.cordova.PluginManager.exec(PluginManager.java:122)",
"org.apache.cordova.CordovaBridge.jsExec(CordovaBridge.java:59)",
"org.apache.cordova.engine.SystemExposedJsApi.exec(SystemExposedJsApi.java:41)",
"android.os.MessageQueue.nativePollOnce(NativeMethod)",
"android.os.MessageQueue.next(MessageQueue.java:374)",
"android.os.Looper.loop(Looper.java:185)",
"android.os.HandlerThread.run(HandlerThread.java:67)"
]
After searching for information , In the project platforms\android\app\src\main\java\org\apache\cordova\device\Device.java There is a problem with the initialization method of this class in .
Because we get uuid, As a result, although there is control over acquisition in the project ( You must first obtain user authorization ), But as soon as you enter app, Before obtaining user authorization , We have already obtained uuid.
3. resolvent
1. Discard the plug-in (cordova-plugin-device), It is applicable to situations that have little impact on business and logic ;
2. Continue to use the plug-in , Modify the plug-in to get the native device ID The way , It is applicable to devices with complex upper logic ID When the requirements are not very strict .
3. Custom plug in , And upload them to cordova Community , The best way , Invest more .
边栏推荐
- Multi process programming (III): message queue
- Graduation summary
- Leetcode 294. Flip game II (game theory)
- The most painful programming problem in 2021, adventure of code 2021 Day24
- NC50965 Largest Rectangle in a Histogram
- Andorid gets the system title bar height
- 机器学习:numpy版本线性回归预测波士顿房价
- 多进程编程(三):消息队列
- pageoffice-之bug修改之旅
- 关于Unity屏幕相关Screen的练习题目,Unity内部环绕某点做运动
猜你喜欢

Is there a free text to speech tool to help recommend?

Linux Software: how to install redis service

多进程编程(一):基本概念

Bigder: how to deal with the bugs found in the 32/100 test if they are not bugs

Explain in detail the significance of the contour topology matrix obtained by using the contour detection function findcontours() of OpenCV, and how to draw the contour topology map with the contour t

2022上半年值得被看见的10条文案,每一句都能带给你力量!

pod生命周期详解

Two common methods and steps of character device registration

【AutoSAR 十三 NVM】

奥斯陆大学:Li Meng | 基于Swin-Transformer的深度强化学习
随机推荐
Pat 1030 travel plan (30 points) (unfinished)
Basic use of shell script
Set up nacos2 X cluster steps and problems encountered
布隆过滤器
文件操作IO-Part2
[IELTS reading] Wang Xiwei reading P2 (reading fill in the blank)
The "2022 China Digital Office Market Research Report" can be downloaded to explain the 176.8 billion yuan market in detail
One of the reasons why setinterval timer does not take effect in ie: the callback is the arrow function
多进程编程(五):信号量
Centos7 one click compilation to build MySQL script
DotNet圈里一个优秀的ORM——FreeSql
Rust字符串切片、结构体和枚举类
Bigder: how to deal with the bugs found in the 32/100 test if they are not bugs
redis21道经典面试题,极限拉扯面试官
Some introduction and precautions about XML
Why is the website slow to open?
百度智能云牵头打造智能云综合标准化平台
【单片机项目实训】八路抢答器
简单聊聊运维监控的其他用途
University of Oslo: Li Meng | deep reinforcement learning based on swing transformer