隐私控制

隐私控制

ZJSDK 已支持工信部隐私敏感权限要求。SDK 不会强制获取任何敏感权限,以下系统权限及用户授权均为可选配置,不获取不影响 SDK 功能。

注意

需要配置隐私信息控制开关,或在用户同意隐私协议后再调用ZjSdk#start方法启动 SDK

个性化推荐

为遵循《个人信息保护法》相关法规,ZJSDK 将为开发者提供个性化广告关闭能力接口,开发者可以调用接口,为用户提供个性化广告关闭能力。开发者应遵循法律法规要求,在客户端为用户创建可便捷查找的个性化广告关闭按钮,并保证用户点击关闭按钮后调用 ZJSDK 关闭能力接口,保证个性化广告关闭功能真实有效。

方法说明
ZjSdk#setPersonalizedState(int state)配置个性化推荐
state 1: 屏蔽个性化推荐; 2: 不屏蔽个性化推荐)

应用需要自行记录个性化推荐的开关状态,在状态发生变化时调用ZjSdk.setPersonalizedState(int)方法配置,下次启动后生效。调用时请确保 SDK 已初始化完成

程序化推荐

方法说明
ZjSdk#setProgrammaticRecommend(int state)配置程序化推荐
state 1: 屏蔽程序化推荐; 2: 不屏蔽程序化推荐)

应用需要自行记录程序化推荐的开关状态,在状态发生变化时调用ZjSdk.setProgrammaticRecommend(int)方法配置,下次启动后生效。调用时请确保 SDK 已初始化完成

隐私信息控制开关

开发者需要在每次初始化 SDK 前调用ZjCustomController.getInstance().setCustomController(ZjCustomController.Controller customController)方法配置隐私权限开关

开发者通过重写ZjCustomController.Controller的以下方法可以控制 SDK 主动获取对应的信息,建议在限制 SDK 主动获取后将对应的信息回传到 SDK,以提高广告填充

方法说明
boolean canReadLocation()是否允许 SDK 主动使用地理位置信息,默认为 true
Location getLocation()当 canReadLocation()==false 时,可传入地理位置信息
boolean canUsePhoneState()是否允许 SDK 主动使用手机硬件参数(imei, meid, imsi, iccid),默认为 true
String getImei()当 canUsePhoneState()==false 时,可传入原始的 imei 信息
String[] getImeis()当 canUsePhoneState()==false 时,可传入原始的 imei 信息
boolean canUseAndroidId()是否允许主动获取AndroidID,默认为 true
String getAndroidId()当 canUseAndroidId()==false 时,可传入 android_id 信息
boolean canUseMacAddress()是否允许 SDK 主动使用 mac_address,默认为 true
String getMacAddress()当 canUseMacAddress()==false 时,可传入 mac 地址信息
boolean canUseOaid()是否允许 SDK 主动使用 oaid,默认为 true
String getOaid()当 canUseOaid()==false 时,可传入 oaid 信息
boolean canUseNetworkState()是否允许 SDK 主动使用 ACCESS_NETWORK_STATE 权限,默认为 true
boolean canUseStoragePermission()是否允许 SDK 主动使用存储权限,默认为 true
boolean canReadInstalledPackages()是否允许 SDK 主动读取 app 安装列表,默认为 true
public List<String> getInstalledPackages()当 canReadInstalledPackages()==false 时,可传入已安装应用列表信息
boolean canRecordAudio()是否允许 SDK 在申明和授权了的情况下使用录音权限,默认为 true
boolean canReadBootId()是否允许 SDK 主动获取 BootID,默认为 true
boolean canReadNearbyWifiList()否允许获取附近的Wifi列表,默认为 true

配置主进程名

SDK 在初始化时会主动获取一次,默认不需要配置,如应用市场检测反馈

APP在前台或后台运行时,APP 或 SDK 收集用户个人信息的频率超过合理范围,请尽可能保证全局只收集1次(最多不超过三次),收集频次不要超过1次/秒

等问题时,可以通过在初始化SDK前配置主进程名解决:

方法说明
ZjSdk#setCurrProcessName(String processName)媒体配置主进程名(需要在初始化前调用)