移动统计SDK合规配置指引(安卓)
根据《个人信息保护法》、《数据安全法》、《网络安全法》等法律法规和监管部门规章要求,App开发运营者(以下简称为“开发者”)在提供网络产品服务时应尊重和保护最终用户的个人信息,不得违法违规收集使用个人信息。为帮助开发者在使用移动统计SDK的过程中更好地落实用户个人信息保护相关要求,避免出现侵害最终用户个人信息权益的情形,特制定本合规使用说明。
一、移动统计SDK权限及调用时机:
个人信息相关权限 | 权限调用时机 | 权限用途 |
ACCESS_NETWORK_STATE(必选) | 初始化时 | 检测联网方式,在网络异常状态避免数据发送,节省流量和电量。 |
ACCESS_WIFI_STATE(必选) | 初始化时 | 查看网络状态,用于SDK重连机制等场景。 |
INTERNET(必选) | 进行数据分析时 | 允许SDK联网和发送统计数据的最基础权限,以提供统计分析服务。 |
ACCESS_FINE_LOCATION (可选) | 区域数据统计时使用 | 通过获取位置信息,为开发者提供反作弊风控,剔除作弊设备;同时矫正用户的地域分布数据,提供区域数据统计报表。 |
ACCESS_COARSE_LOCATION(可选) | 区域数据统计时使用 | 通过获取位置信息,为开发者提供反作弊风控,剔除作弊设备;同时矫正用户的地域分布数据,提供区域数据统计报表。 |
历史版本权限使用情况:
个人信息相关权限 | 权限调用时机 | 权限用途 |
READ_PHONE_STATE(可选) V9.8.4版本已不再使用 | 进行数据分析时 | 获取设备的不可变标识符,进行统计数据的去重和异常分析,并精准溯源风险设备。 |
READ_EXTERNAL_STORAGE(可选) V9.6.6版本已不再使用 | 进行数据分析时 | 获取应用目录以进行安装卸载统计,并识别设备风险特征和潜在安全威胁(如恶意应用关联等)。 |
注:随着技术的迭代升级,以上权限在最新SDK版本中均已不再使用,请您尽快升级SDK。
二、移动统计SDK(安卓版)功能及相关个人信息
功能 | 采集个人信息字段 | 个人信息采集目的 | 功能配置方案及示例 |
统计分析 (基础功能) | 设备标识信息 (AndroidID/OAID/GUID/GAID) | 基于设备信息用于生成脱敏的终端用户设备标识,以提供统计分析服务 | 基础功能,必要信息 |
区域统计 (扩展功能) | 网络信息 位置信息 | 基于网络信息用于优化网络连接请求,以提供持续稳定的统计分析服务;基于位置信息实现区域统计功能,生成区域数据报表。 | 配置开启、关闭示例: com.uyumao.sdk.UYMManager.enableYm1(Context context, boolean enable); com.uyumao.sdk.UYMManager.enableYm2(Context context, boolean enable); com.uyumao.sdk.UYMManager.enableYm3(Context context, boolean enable); com.uyumao.sdk.UYMManager.enableYm4(Context context, boolean enable); com.uyumao.sdk.UYMManager.enableYm5(Context context, boolean enable); 参数:context:应用上下文;enable:true 开启、false 关闭 |
卸载统计 (扩展功能) | 应用列表信息 | 基于应用列表实现应用安装与卸载统计,并识别异常安装等潜在安全风险。 | 配置开启、关闭示例: com.uyumao.sdk.UYMManager.enableYm6(Context context, boolean enable); com.umeng.message.PushAgent.getInstance(context).setSmartEnable(boolean enable); 参数:context:应用上下文;enable:true 开启、false 关闭 |
三、移动统计SDK可选个人信息字段配置方案
可选个人信息字段 | 个人信息采集目的 | 功能配置方案及示例 |
应用列表信息 | 基于应用列表实现应用安装与卸载统计,识别异常安装等潜在安全风险。 | //应用列表设置接口 //参数:context:应用上下文;enable:true 开启、false 关闭 com.uyumao.sdk.UYMManager.enableYm6(Context context, boolean enable); com.umeng.message.PushAgent.getInstance(context).setSmartEnable(boolean enable); |
位置相关信息 | 基于网络信息用于优化网络连接请求,以提供持续稳定的统计分析服务;基于位置信息实现区域统计功能,生成区域数据报表。 | //位置设置接口 //参数:context:应用上下文;enable:true 开启、false 关闭 com.uyumao.sdk.UYMManager.enableYm1(Context context, boolean enable); com.uyumao.sdk.UYMManager.enableYm2(Context context, boolean enable); com.uyumao.sdk.UYMManager.enableYm3(Context context, boolean enable); com.uyumao.sdk.UYMManager.enableYm4(Context context, boolean enable); com.uyumao.sdk.UYMManager.enableYm5(Context context, boolean enable); |
设备信息(IMEI) | 基于设备信息用于生成脱敏的终端用户设备标识,进行统计数据的去重和异常分析,并精准溯源风险设备。 | // IMEI采集接口设置 // 参数flag: true-允许采集IMEI;false-不允许采集IMEI public static void enableImeiCollection(boolean flag) 关闭采集接口需要在调用UMConfigure.init 函数之前调用。 |
设备信息(IMSI) | 基于设备信息用于生成脱敏的终端用户设备标识,进行统计数据的去重和异常分析,并精准溯源风险设备。 | // IMSI采集接口设置 // 参数flag: true-允许采集IMSI;false-不允许采集IMSI public static void enableImsiCollection(boolean flag) 关闭采集接口需要在调用UMConfigure.init 函数之前调用。 |
设备信息(ICCID) | 基于设备信息用于生成脱敏的终端用户设备标识,进行统计数据的去重和异常分析,并精准溯源风险设备。 | // ICCID采集接口设置 // 参数flag: true-允许采集ICCID;false-不允许采集ICCID public static void enableIccidCollection(boolean flag) 关闭采集接口需要在调用UMConfigure.init 函数之前调用。 |
注:随着技术的迭代升级,IMEI/IMSI/ICCID 在最新版本SDK已不再采集,请您尽快升级。
四、移动统计SDK合规初始化配置方案
// SDK预初始化方法
// preInit预初始化方法耗时极少,不会影响App首次冷启动用户体验
public static void preInit(Context context, String appkey, String channel);
// SDK注册用户ID方法
public static void init(Context context, String appkey, String channel, int
deviceType, String pushSecret);
您务必确保用户同意《隐私政策》之后,在Applicaiton.onCreate函数中调用预初始化方法UMConfigure.preInit(...),然后再调用注册用户ID方法。示例
com.umeng.commonsdk.UMConfigure.preInit(...);
com.umeng.commonsdk.UMConfigure.init(...);
确保App首次冷启动时,在用户阅读您的《隐私政策》并取得用户授权之后,才调用预初始化方法UMConfigure.preInit(...),再调用注册用户ID方法UMConfigure.init(...)和推送注册方法com.umeng.message.PushAgent.getInstance(context).register(...),生成友盟推送标识(umid和devicetoken),此时SDK才会真正收集用户信息并上报数据。反之,如果用户不同意《隐私政策》授权,则不能调用UMConfigure.preInit(...)、UMConfigure.init(...)方法和com.umeng.message.PushAgent.getInstance(context).register(...)方法。
一旦App获取到《隐私政策》的用户授权,后续的App冷启动,开发者应该保证在Applicaiton.onCreate函数中调用预初始化方法UMConfigure.preInit(...)。
注册用户ID方法UMConfigure.init(...)和推送注册方法com.umeng.message.PushAgent.getInstance(context).register(...)可以在预初始化方法之后紧接着调用,也可以放到后台线程中延迟调用,但还是必须调用,不能遗漏。五、移动统计SDK隐私政策条款模板:
您务必告知用户您选择友盟+SDK服务,请在《隐私政策》中增加如下参考条款。
请注意:收集个人信息类型根据您对SDK扩展功能的选择和可选信息的配置进行公示。
SDK名称:友盟移动统计SDK
使用目的:进行APP数据统计分析
运营方:友盟同欣(北京)科技有限公司
收集个人信息类型:设备信息(Android ID/IDFA/IDFV/OAID/OpenUDID/GUID/GAID)、 网络信息、位置信息(可选)、应用列表(可选)
隐私权政策链接:https://www.umeng.com/page/policy
以上条款,请在您的《隐私政策》中增加,《隐私政策》需要在APP首次运行前弹出,取得最终用户同意。
示例:
六、移动统计SDK用户权益保障机制:
我们将努力使您能审阅、更正或补充您存在我们这里的信息。如需审阅、更正、补充、删除您和您用户的信息,您可以通过工单系统(具体路径为登录您的账号,点击客服工单进行反馈)或个人信息保护专职邮箱(Umeng_Legal@service.umeng.com)与我们联系,我们协助您进行相应操作。
如您有任何疑问,也可以通过如下视频课程进行了解。
视频课程:友盟+SDK合规方案
联系我们
联系我们若以上答案,仍未解决您的问题,请拨打我们的热线电话:4009901848 或者 提交工单 进行反馈。感谢您的支持与厚爱!