合规指南

引言

应法律法规要求,所有APP均须向终端用户出示当前APP的《隐私政策》,在用户同意《隐私政策》之前,APP不能收集任何涉及隐私的设备信息(也不能执行Open-APP SDK的初始化),否则将面临APP被下架的风险。因此请开发者务必参照此文档做好安全合规相关事项,以免影响App正常上架。因此,您需要制定一份App《隐私政策》。《隐私政策》是说明App的个人信息收集和使用情况,获得用户的合法授权以及保护用户个人信息主体权利的重要文档,其内容应符合国家相关法律法规、政策及标准的规定及您与Open-APP的协议约定。您的App《隐私政策》中须包含Open-APP SDK收集使用个人设备信息的目的、方式和范围等,提供的数据安全保护标准应不低于和Open-APP的协议约定

App《隐私政策》须展示的内容

您应向终端用户逐一明示您嵌入的第三方SDK收集使用个人信息的目的、方式和范围。您应当在《隐私政策》中明确告知终端用户,您谨慎地选择了Open-APP作为合作方,并允许Open-APP对已收集的数据进行去标识化和聚合性的处理后,构建数据模型,用以提供数据服务。
您需要在《隐私政策》中的“数据共享和披露”中增加Open-APP SDK所采集的设备信息和用途, 参考如下:

Android:

收集信息种类 使用目的 获取方式
必选:设备品牌、设备型号、操作系统版本、网络信息(IP地址) 应用统计、拉起分析、App传参安装、H5渠道统计、Android渠道包统计、裂变分享统计 SDK初始化时自动获取
可选:粘贴板(剪切板) 提升App传参功能、H5渠道统计的归因精度 SDK初始化时自动获取或开发者主动传入
必选:本地存储权限 可选:Android ID、设备序列号(SerialNumber)、读取/写入本地文件 作弊监控功能 SDK初始化时自动获取或开发者主动传入
可选:IMEI、OAID、GAID、Mac地址 广告统计功能 SDK初始化时自动获取或开发者主动传入

iOS:

收集信息种类 使用目的 获取方式
必选:设备品牌、设备型号、操作系统版本、网络信息(IP地址) 应用统计、拉起分析、App传参安装、H5渠道统计、Android渠道包统计、裂变分享统计 SDK初始化时自动获取
必选:粘贴板(剪切板) 提升App传参功能、H5渠道统计的归因精度 SDK初始化时自动获取
必选:本地存储权限 作弊监控功能 SDK初始化时自动获取
可选:IDFA 广告统计功能 SDK初始化时自动获取或开发者主动传入

Harmony:

收集信息种类 权限名称 权限说明 使用目的 申请时机
必选:网络信息 ohos.permission.INTERNET 允许使用Internet网络 访问网络 SDK初始化时使用
必选:网络信息 ohos.permission.GET_WIFI_INFO 允许获取Wi-Fi信息 获取网络信息用于应用统计、拉起分析、App传参安装、H5渠道统计、Android渠道包统计、裂变分享统计 SDK初始化时使用
必选:应用基本信息、系统基本信息、系统设置信息 ohos.permission.GET_BUNDLE_INFO 允许查询应用的基本信息 获取应用信息用于应用统计、拉起分析、App传参安装、H5渠道统计、Android渠道包统计、裂变分享统计 SDK初始化时使用
必选:本地存储权限 ohos.permission.STORE_PERSISTENT_DATA 允许安全存储及管理数据 作弊监控功能 SDK初始化时使用
可选:开放匿名设备标识符 ohos.permission.APP_TRACKING_CONSENT 允许应用读取开放匿名设备标识符 广告统计功能 SDK初始化时使用
可选:粘贴板(剪切板) ohos.permission.READ_PASTEBOARD 允许应用读取剪切板内容 读取并解析口令, 提升App传参功能、H5渠道统计数据还原精度 SDK初始化时使用

此表格可以作为参考,向您的用户披露Open-APP SDK收集使用个人信息的目的、方式和范围。您应知悉和了解,部分设备信息和网络信息需要通过您安装Open-APP SDK 的宿主App申请权限,Open-APP不主动向用户移动终端申请任何权限,只有在获得用户的授权同意后我们才会进行收集。

注:Open-APP SDK传输终端用户的相关数据时会先进行加密,然后传输上报到Open-APP服务器(不会明文传输)

注意事项

1、您在使用 Open-APP SDK 前,应当仔细阅读并同意接受Open-APP的《服务条款》《隐私政策》
2、您请务必确保已经将Open-APP SDK升级到官网发布的最新版本,以保证所使用的SDK收集使用个人设备信息的目的、方式和范围等与Open-APP《隐私政策》中的一致。
最新版本SDK下载地址:SDK下载地址
3、您务必确保在App启动页通过弹窗的形式出示App《隐私政策》,在未征得用户同意之前,不能调用Open-APP SDK初始化,更不能读取任何用户设备信息,否则将面临被应用市场下架的风险。
4、您应遵从国家相关法律法规、政策及标准的要求,对App《隐私政策》进行展示,包括但不限于:

  • 保证《隐私政策》的独立性:《隐私政策》以单独成文的形式发布,而不是作为用户协议、用户说明等文件的一部分存在。
  • 保证《隐私政策》的明显提示性:App首次运行时,需要通过弹窗等明显方式提示终端用户阅读《隐私政策》并获取用户的确认。
  • 保证《隐私政策》的易读性:《隐私政策》文本文字显示方式(字号,颜色,行间距等)不会造成阅读困难。
  • 保证《隐私政策》的易于访问性:进入App主功能界面后,通过4次以内的点击,能够访问到《隐私政策》。

其它

对于部分应用市场的上架审核制度,Open-APP SDK提供了开发者对部分设备信息获取的控制方式,以便于开发者做出针对性调整。

1、粘贴板
此配置作用为控制Open-APP SDK读取粘贴板的频率:

  • 设置为true时:粘贴板读取频率正常,但可能上架部分应用商店时会被认定为频率过高(例如应用宝);
  • 设置为false时:降低粘贴板读取频率以满足各大应用商店的上架审核规则,缺点则是读取成功率略微降低。
    <meta-data 
      android:name="com.openinstall.PB_SIGNAL"
      android:value="false" />
    
    注意:Android SDK 2.6.4或以上的版本支持此配置方式。该配置的作用是开启SDK对粘贴板获取的间隔时长。当粘贴板读取失败时,会间隔1.2s后再次尝试读取(尝试获取次数最大不超过3次)。

2、其它设备信息
除粘贴板信息之外,其他设备信息的获取频率、次数在Android SDK 2.6.3或以上版本均已满足各大应用市场的审核标准。如果应用市场检测到App中(包含App开发者自身以及App所集成的所有SDK)的总获取频率或次数过高而被拒,可以考虑采用开发者自行获取对应的设备信息后主动传给对应的SDK,来避免App中的总获取频率、次数过高。使用方法如下(Android SDK 2.6.4或以上版本支持此方法):

未使用“广告统计”功能时
可自行获取并传入 Android ID、serialNumber,也可以传入空字符串来禁止SDK自动获取(这些信息用于数据排重、作弊监控用途,如重视重复设备数据过滤建议保留)

Configuration configuration = new Configuration.Builder()
        .androidId(androidId)
        .serialNumber(serialNumber)
        .build();
OpenInstall.init(context, configuration);//初始化SDK

使用了“广告统计”功能时
除 Android ID、serialNumber 外,可按需求自行获取并传入 imei、oaid、gaid、MAC地址用于广告统计功能需的设备信息,也可以传入空字符串来禁止SDK自动获取

Configuration configuration = new Configuration.Builder()        
        .androidId(androidId)
        .serialNumber(serialNumber)
        .imei(imei)
        .oaid(oaid)
        .gaid(gaid)
        .macAddress(macAddress)
        .build();
OpenInstall.init(context, configuration);//初始化SDK