欧盟地区用户意见征求政策

根据 Google 欧盟地区用户意见征求政策,您必须向位于欧洲经济区 (EEA) 和英国境内的用户披露相关信息,在法律有相应要求的情况下,必须就 Cookie 或其他本地存储方式的使用征得他们的同意,并使用个人数据(例如 AdID)来投放广告。 此政策反映了欧盟《电子隐私指令》和《一般数据保护条例》(GDPR) 的要求。

1. 在您的主要的MainActivity增加下面方法


    private void loadAndShowConsentFormIfRequired(){
        GoogleMobileAdsConsentManager manage=  GoogleMobileAdsConsentManager.getInstance(this);
        //添加模拟测试设备ID和模拟欧盟用户经纬度 请参考gatherConsent中方法
        manage.gatherConsent(this,new GoogleMobileAdsConsentManager.OnConsentGatheringCompleteListener(){

            @Override
            public void consentGatheringComplete(FormError error) {

                if(manage.canRequestAds()){
                    Log.e("UNAD_SDK","通过");
                }
            }
        });
    }

当用户是欧盟用户,并且没有选择过隐私授权表单,调用此方法会弹出以下表单界面,当用户选择同意或者拒绝之后,在13个月的有效期内此方法不会再弹出隐私授权表单。所以建议每次都调用此方法,当失效后又会弹出让用户自己选择。

2. 在您的设置中增加用户隐私修改按钮

意见征求表单要求允许用户随时修改其同意声明。请按照以下步骤实现隐私设置选项按钮。

注意,这个选项是在已经弹出过征求表单窗口后的设备才显示,可根据以下代码判断是否显示按钮

   通过isPrivacyOptionsRequired()判断是否已经显示过

点击隐私按钮调用弹出修改隐私表单窗口,表单和第一次弹出的显示一样,但方法不同。

 GoogleMobileAdsConsentManager.getInstance(this).showPrivacyOptionsForm(this,new ConsentForm.OnConsentFormDismissedListener(){
            public void onConsentFormDismissed(@Nullable FormError formError) {

        });

参考图:

4. 测试模拟欧盟用户

GoogleMobileAdsConsentManager 类中放开setDebugGeography(ConsentDebugSettings.DebugGeography.DEBUG_GEOGRAPHY_EEA)代码的屏蔽 该代码表示模拟欧盟地区。

查看日志 找到类似Use new ConsentDebugSettings.Builder().addTestDeviceHashedId("ABCDEF012345") 把日志中的设备id添加到您的代码中去 .addTestDeviceHashedId("你日志中看到的设备id")这样就可以进行UMP的测试了。

注意,测试时必须要翻墙。

参考图:

详细参考DEMO中的 MainActivity

注意,上线的版本需要屏蔽setDebugGeography(ConsentDebugSettings.DebugGeography.DEBUG_GEOGRAPHY_EEA) 和.addTestDeviceHashedId("你日志中看到的设备id") 注意,上线的版本需要屏蔽setDebugGeography(ConsentDebugSettings.DebugGeography.DEBUG_GEOGRAPHY_EEA) 和.addTestDeviceHashedId("你日志中看到的设备id") 注意,上线的版本需要屏蔽setDebugGeography(ConsentDebugSettings.DebugGeography.DEBUG_GEOGRAPHY_EEA) 和.addTestDeviceHashedId("你日志中看到的设备id")

results matching ""

    No results matching ""