Android应用市场隐私条例的问题
文章目录
- Android应用市场隐私条例的问题
- 前言
- 相关问题
- 1、用户点击"同意"前,APK和SDK不要进行任何行为,包括SDK不能初始化,APK或SDK不能收集用户信息(包括但不限于IMNEI、INSI、设备MAC地址、软件列表、设备序列号、androd ID)
- 2、APP或SDK收集用户信息(包括但不限于IMEI、IMSI、设备MAC地址、软件列表、设备序列号、android ID)未在隐私政策内说明,请在隐私政策内补充收集上述信息的说明。
- 3、APP隐私政策存在"根据用户偏好“进行个性化推送,请在设置中增加个性化推送开关。
- 4、未同意前APP访问了当前进程列表
- 5、未同意隐私前不可以收集IP
- 更新记录:
前言
主要是应用市场反馈的问题,也有网警要求应用市场让我们整改的一些问题。记录一下这些遇到的问题,以及如何解决,给后续遇到相同问题的开发者或者自己一定帮助。
相关问题
1、用户点击"同意"前,APK和SDK不要进行任何行为,包括SDK不能初始化,APK或SDK不能收集用户信息(包括但不限于IMNEI、INSI、设备MAC地址、软件列表、设备序列号、androd ID)
处理方法:
- 打开APP进行明显的隐私弹窗,同意后才初始化第三方SDK
- 注意查看隐私协议的时不要使用X5浏览,X5也会获取手机设备地址相关
- 第三方SDK,进行延迟初始化,但是部分SDK延迟初始化无效,(建议直接移除该SDK,流氓SDK)
- H5如果使用了第三方SDK,也需要在隐私条例中加入相关使用SDK(公安也会查)
检查方法:抓包工具、知乎-检查app隐私获取
2、APP或SDK收集用户信息(包括但不限于IMEI、IMSI、设备MAC地址、软件列表、设备序列号、android ID)未在隐私政策内说明,请在隐私政策内补充收集上述信息的说明。
处理方法::
在隐私条例中加入相关说明(可以参考其他APP的隐私条例),例如
为您提供其他附加服务
为向您提供更便捷、更优质、个性化的产品及/或服务,努力提升您的体验,我们会收集您的设备型号、操作系统、唯一设备标识符、登录IP地址、操作日志、MAC地址、应用程序列表信息。我们在向您提供的以下附加服务中可能会收集和使用您的个人信息。如果您不提供这些信息,不会影响您使用我们平台的浏览、搜索、购买等基本服务,但您可能无法获得这些附加服务给您带来的用户体验。这些附加服务包括:
1.基于相机/摄像头的附加服务:您可在开启相机/摄像头权限后使用该功能。我们访问您的相机是为了使您可以使用摄像头拍摄影像、照片,用于用户登录、直接拍摄并上传视频、图片参与UGC相关功能,进行相应内容在我们平台的展示,以及特定场景下经您授权活动参与,以及其他您明确知悉的场景。
2.基于相册(图片库/视频库)的图片/视频访问及上传的附加服务:您可在开启相册权限后使用该功能上传您的照片/图片/视频以及本地缓存的视音频文件,确保本地图片、视频上传至荔枝微课的功能可行,便于您进行头像更换、发表和分享评论、保存活动分享二维码、或与客服沟通时证明您所遇到的问题。我们可能会通过您所上传的照片/图片来识别您需要参与的活动链接或者视频服务链接,或使用包含您所上传照片或图片的评论信息。为实现您的好友、活动优惠以及其他链接分享需求,我们可能会在设备本地读取您最近一次主动保存的图片链接地址。
3.基于麦克风的语音技术相关附加服务:您可在开启麦克风权限后实现音频录制功能;请您知晓,即使您已同意开启麦克风权限,我们也仅会在您主动点击客户端内麦克风图标或录制音频时通过麦克风获取语音信息。
4.位置权限:您可以打开您的位置权限,获取您所在地,进行服务推荐信息。
5.电话状态权限:为保障您的账号与使用安全,您需要授权我们读取本机识别码。
6.访问App安装列表:如您分享,需要访问APP安装列表来判断是否已安装微信/QQ等客户端。
您理解并同意,上述附加服务可能需要您在您的设备中开启您的摄像头(相机)、相册(图片库)、麦克风(语音)、位置及/或电话状态的访问权限,以实现这些权限所涉及信息的收集和使用。请您注意,您开启任一权限即代表您授权我们可以收集和使用相关个人信息来为您提供对应服务,您一旦关闭任一权限即代表您取消了授权,我们将不再基于对应权限继续收集和使用相关个人信息,也无法为您提供该权限所对应的服务。但是,您关闭权限的决定不会影响此前基于您的授权所进行的信息收集及使用。
SDK 的可以额外做一个表格说明
3、APP隐私政策存在"根据用户偏好“进行个性化推送,请在设置中增加个性化推送开关。
处理方法:
在APP 设置增加中加入 “个性化设置->个性化服务(开/关)”,可以参考其他APP
4、未同意前APP访问了当前进程列表
处理方法:
- 因为APP存在多进程,所有一般我需要判断进程来初始化,否则有些会初始化2次造成浪费,原先是通过
ActivityManager
获取当前进程列表来判断的。但是现在被警告了,所以替换原先的获取进程的方式,通过文件方式获取
public static String getCurrentProcessNameByFile() {
try {
File file = new File("/proc/" + android.os.Process.myPid() + "/cmdline");
BufferedReader mBufferedReader = new BufferedReader(new FileReader(file));
String processName = mBufferedReader.readLine().trim();
mBufferedReader.close();
return processName;
} catch (Exception e) {
e.printStackTrace();
return "com.xxxx.xxx";
}
}
private boolean inMainProcess() {
return SystemUtil.getCurrentProcessNameByFile().equals(BuildConfig.APPLICATION_ID);
}
5、未同意隐私前不可以收集IP
处理方法:
我的问题是弹窗统一就做了一些初始化导致请求了网络,导致了问题。
- 重点:不仅仅隐私弹窗的同意,还要底部勾选了