隐私控制
隐私控制
此章节将演示如何在初始化时配置用户的隐私信息控制
提示
如无特殊需求,可以直接跳转到【常见问题】
个性化推荐与程序化推荐
说明
为遵循《个人信息保护法》相关法规,ZJSDK 将为开发者提供个性化广告关闭能力接口,开发者可以调用接口,为用户提供个性化广告关闭能力。开发者应遵循法律法规要求,在客户端为用户创建可便捷查找的个性化广告关闭按钮,并保证用户点击关闭按钮后调用 ZJSDK 关闭能力接口,保证个性化广告关闭功能真实有效。
个性化推荐
应用需要自行记录个性化推荐的开关状态,在状态发生变化时调用ZJAndroid.setPersonalizedState(bool)方法配置,下次启动后生效。调用时请确保 SDK 已初始化完成
| 方法 | 参数 |
|---|---|
| ZJAndroid#setPersonalizedState(bool state) | state: 是否开启推荐 |
程序化推荐
应用需要自行记录程序化推荐的开关状态,在状态发生变化时调用ZJAndroid.setProgrammaticRecommend(bool)方法配置,下次启动后生效。调用时请确保 SDK 已初始化完成
| 方法 | 参数 |
|---|---|
| ZJAndroid#setProgrammaticRecommend(bool state) | state: 是否开启推荐 |
隐私信息控制
说明
ZJSDK 已支持工信部隐私敏感权限要求。SDK 不会强制获取任何敏感权限,以下系统权限及用户授权均为可选配置,不获取不影响 SDK 功能。
配置方法
开发者需要在调用 initWithoutStart() 初始化时传入customController属性来配置隐私权限开关
/// 隐私权限控制
class ZJCustomController {
static const List<String> defaultInstalledPackages = [];
/// 主动获取定位
final bool canReadLocation;
/// 经度
final double longitude;
/// 纬度
final double latitude;
/// 主动获取设备信息
final bool canUsePhoneState;
/// IMEI
final String imei;
/// 主动获取AndroidID
final bool canUseAndroidId;
/// AndroidID
final String androidId;
/// 主动获取MAC地址
final bool canUseMacAddress;
/// MAC地址
final String macAddress;
/// 主动获取OAID
final bool canUseOaid;
/// OAID/GAID
final String oaid;
/// 获取网络状态
final bool canUseNetworkState;
/// 使用存储
final bool canUseStoragePermission;
/// 主动读取已安装应用列表
final bool canReadInstalledPackages;
/// 已安装应用列表
final List<String> installedPackages;
/// 是否允许SDK在申明和授权了的情况下使用录音权限
bool canRecordAudio;
/// 是否允许SDK主动获取BootID
bool canReadBootId;
/// 是否允许获取附近的Wifi列表
bool canReadNearbyWifiList;
/// 是否允许获取传感器信息
bool canUseSensor;
/// 是否允许 SDK 主动获取运营商信息
bool canUseSimOperator;
/// 当 canUseSimOperator==false 时,可传入运营商编码,例如:46000
final String simOperatorCode;
/// 当 canUseSimOperator==false 时,可传入运营商名称,例如:中国移动
final String simOperatorName;
ZJCustomController({this.canReadLocation = true,
this.longitude = 0.0000,
this.latitude = 0.0000,
this.canUsePhoneState = true,
this.imei = "",
this.canUseAndroidId = true,
this.androidId = "",
this.canUseMacAddress = true,
this.macAddress = "",
this.canUseOaid = true,
this.oaid = "",
this.canUseNetworkState = true,
this.canUseStoragePermission = true,
this.canReadInstalledPackages = true,
this.installedPackages = defaultInstalledPackages,
this.canRecordAudio = true,
this.canReadBootId = true,
this.canReadNearbyWifiList = true,
this.canUseSensor = true,
this.canUseSimOperator = true,
this.simOperatorCode = "",
this.simOperatorName = ""});
}
注意
当开发者的隐私限制状态发生变动时,为使部分仅静态配置的 ADN 隐私限制生效,建议调用ZJAndroid.onCustomControllerUpdate(ZJCustomController? customController)方法主动通知 SDK 以同步生效