HarmonyOS鸿蒙Next中游戏在用户同意隐私政策前获取个人信息的解决方案
HarmonyOS鸿蒙Next中游戏在用户同意隐私政策前获取个人信息的解决方案 尊敬的开发者,您好,
- 您的游戏在用户同意隐私政策前获取了个人信息,可参考以下调用栈日志定位修改,确保在用户同意隐私政策后再获取个人信息;未同意隐私政策,应用获取ANDROID ID
[org.egret.launcher.versioncontroller1_0.VersionController.setDataToNative(Native Method),
org.egret.launcher.versioncontroller1_0.VersionController.sendData(VersionController.java:46),
java.lang.reflect.Method.invoke(Native Method),
org.egret.egretnativeandroid.c.a(NativePlayer.java:247),
org.egret.egretnativeandroid.c.<init>(NativePlayer.java:86),
org.egret.egretnativeandroid.c.a(NativePlayer.java:57),
org.egret.egretnativeandroid.EgretNativeAndroid.initialize(EgretNativeAndroid.java:114),
org.egret.launcher.lqwzfbqs.MainActivity.onCreate(MainActivity.java:91),
android.app.Activity.performCreate(Activity.java:8400),
android.app.Activity.performCreate(Activity.java:8380),
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1323)
- 未同意隐私政策,应用获取应用安装列表
[android.app.ApplicationPackageManager.getInstalledPackages(ApplicationPackageManager.java:1029),
org.egret.launcher.versioncontroller1_0.VersionController.setDataToNative(Native Method),
org.egret.launcher.versioncontroller1_0.VersionController.sendData(VersionController.java:46),
java.lang.reflect.Method.invoke(Native Method),
org.egret.egretnativeandroid.c.a(NativePlayer.java:247),
org.egret.egretnativeandroid.c.<init>(NativePlayer.java:86),
org.egret.egretnativeandroid.c.a(NativePlayer.java:57),
org.egret.egretnativeandroid.EgretNativeAndroid.initialize(EgretNativeAndroid.java:114),
org.egret.launcher.lqwzfbqs.MainActivity.onCreate(MainActivity.java:91),
android.app.Activity.performCreate(Activity.java:8400),
android.app.Activity.performCreate(Activity.java:8380)
- 未同意隐私政策,应用获取MAC地址
[org.egret.runtime.component.c.c.b(DeviceInfo.java:126),
org.egret.runtime.component.c.c.b(DeviceInfo.java:156),
org.egret.runtime.core.AndroidNativePlayer.e(AndroidNativePlayer.java:218),
org.egret.runtime.core.AndroidNativePlayer.<init>(AndroidNativePlayer.java:165),
org.egret.runtime.launcherInterface.NativePlayer.initAndSetCurrent(NativePlayer.java:28),
java.lang.reflect.Method.invoke(Native Method),
org.egret.egretnativeandroid.c.<init>(NativePlayer.java:74),
org.egret.egretnativeandroid.c.a(NativePlayer.java:57),
org.egret.egretnativeandroid.EgretNativeAndroid.initialize(EgretNativeAndroid.java:114),
org.egret.launcher.lqwzfbqs.MainActivity.onCreate(MainActivity.java:91),
android.app.Activity.performCreate(Activity.java:8400)
- 未同意隐私政策,应用获取设备ID
[org.egret.runtime.component.c.c.a(DeviceInfo.java:69),
org.egret.runtime.core.AndroidNativePlayer.e(AndroidNativePlayer.java:214),
org.egret.runtime.core.AndroidNativePlayer.<init>(AndroidNativePlayer.java:165),
org.egret.runtime.launcherInterface.NativePlayer.initAndSetCurrent(NativePlayer.java:28),
java.lang.reflect.Method.invoke(Native Method),
org.egret.egretnativeandroid.c.<init>(NativePlayer.java:74),
org.egret.egretnativeandroid.c.a(NativePlayer.java:57),
org.egret.egretnativeandroid.EgretNativeAndroid.initialize(EgretNativeAndroid.java:114),
org.egret.launcher.lqwzfbqs.MainActivity.onCreate(MainActivity.java:91),
android.app.Activity.performCreate(Activity.java:8400),
android.app.Activity.performCreate(Activity.java:8380)
以下是MainActivity代码
public class MainActivity extends Activity {
private final String TAG = "MainActivity";
private EgretNativeAndroid nativeAndroid;
private JsMessage message = new JsMessage();
private int loginTag = 0 ;
private int sdkInitTag = 0; //0失败 1成功
PermissionPageUtils permissionPageUtils ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
permissionPageUtils = new PermissionPageUtils(this);
initQkNotifiers();
sdkInit();
QuickSDK_Manager.onCreate(this);
nativeAndroid = new EgretNativeAndroid(this);
if (!nativeAndroid.checkGlEsVersion()) {
Toast.makeText(this, "This device does not support OpenGL ES 2.0.",
Toast.LENGTH_LONG).show();
return;
}
nativeAndroid.config.showFPS = false;
nativeAndroid.config.fpsLogTime = 60;
//这里必须未true 关闭硬件加速(否则世界地图会变黑色)
nativeAndroid.config.disableNativeRender = true;
nativeAndroid.config.clearCache = false;
nativeAndroid.config.loadingTimeout = 0;
nativeAndroid.config.immersiveMode = true;
nativeAndroid.config.useCutout = true;
setExternalInterfaces();
String tszrUrl = "http://slg.xxxx.com/pppp";
if (!nativeAndroid.initialize(tszrUrl)) {
Toast.makeText(this, "Initialize native failed.",
Toast.LENGTH_LONG).show();
return;
}
setContentView(nativeAndroid.getRootFrameLayout());
}
private void sdkInit(){
QuickSDK_Manager.init(this);
}
private void logout(){
QuickSDK_Manager.logout(this);
}
}
更多关于HarmonyOS鸿蒙Next中游戏在用户同意隐私政策前获取个人信息的解决方案的实战教程也可以访问 https://www.itying.com/category-93-b0.html
2 回复
您好,请留下您的app id,我们跟催下业务部门。为了更快速的处理您的问题,您还可以移步互动中心进一步说明自己的疑问,会有审核人员回复您的。
更多关于HarmonyOS鸿蒙Next中游戏在用户同意隐私政策前获取个人信息的解决方案的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,游戏在用户同意隐私政策前获取个人信息的解决方案应遵循以下步骤:
-
延迟获取:在用户未同意隐私政策前,禁止任何形式的个人信息收集,包括设备信息、位置数据等。
-
明确提示:在游戏启动时,立即弹出隐私政策说明,明确告知用户将收集哪些信息及其用途,并提供“同意”和“拒绝”选项。
-
功能限制:若用户拒绝隐私政策,游戏应仅提供基本功能,禁用任何需要个人信息的服务或功能。
-
合规设计:确保游戏设计符合相关法律法规,如《个人信息保护法》,避免法律风险。
通过这些措施,确保在用户同意隐私政策前不获取个人信息,保护用户隐私。