GDPR
一般信息
《通用数据保护条例》(GDPR) 于 2018 年春季生效。GDPR 规定了如何收集和处理有关欧洲经济区和瑞士公民的信息。其目的是保护机密数据的隐私,并确保与互联网上信息收集、存储和处理相关的所有流程的透明度。
GDPR 具有治外法权范围,适用于处理欧洲经济区和瑞士公民个人数据的所有公司,无论该公司位于何处。
快速指南
每次启动应用程序时,必须将用户同意处理个人数据的信息发送至 SDK。
-
按照 说明 连接移动广告 SDK。
-
显示一个窗口,用户可以在其中接受个人数据处理的用户协议(详情请参见 示例)。
此代码是一个示例,而不是要遵循的分步指南。
KotlinJavaclass GdprDialogFragment : DialogFragment() { // ... // 创建对话框窗口的示例。 override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { val context = requireContext() val builder: AlertDialog.Builder = AlertDialog.Builder(context) builder.setTitle(R.string.gdpr_dialog_title) .setMessage(R.string.gdpr_dialog_message) .setPositiveButton(R.string.accept) { _, _ -> onButtonClicked(context, true) } .setNeutralButton(R.string.about) { _, _ -> openPrivacyPolicy() } .setNegativeButton(R.string.decline) { _, _ -> onButtonClicked(context, false) } return builder.create() } private fun openPrivacyPolicy() { val url = getString(R.string.privacy_policy_url) val intent = Intent(Intent.ACTION_VIEW, Uri.parse(url)) startActivity(intent) } private fun onButtonClicked(context: Context, userConsent: Boolean) { val preferences: SharedPreferences = PreferenceManager.getDefaultSharedPreferences(context) preferences.edit() .putBoolean(SettingsFragment.USER_CONSENT_KEY, userConsent) .putBoolean(SettingsFragment.DIALOG_SHOWN_KEY, true) .apply() noticeDialogListener.onDialogClick() } }
// ... public class GdprDialogFragment extends DialogFragment { // ... // 创建对话框窗口的示例。 public Dialog onCreateDialog(Bundle savedInstanceState) { final Context context = getContext(); AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setTitle(R.string.gdpr_dialog_title) .setMessage(R.string.gdpr_dialog_message) .setPositiveButton(R.string.accept, (dialog, id) -> onButtonClicked(context, true)) .setNeutralButton(R.string.about, (dialog, which) -> openPrivacyPolicy()) .setNegativeButton(R.string.decline, (dialog, id) -> onButtonClicked(context, false)); return builder.create(); } private void openPrivacyPolicy() { final String url = getString(R.string.privacy_policy_url); final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); startActivity(intent); } private void onButtonClicked(final Context context, final boolean userConsent) { final SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context); preferences.edit() .putBoolean(SettingsFragment.USER_CONSENT_KEY, userConsent) .putBoolean(SettingsFragment.DIALOG_SHOWN_KEY, true) .apply(); mNoticeDialogListener.onDialogClick(); } }
-
使用
setUserConsent
方法将接收到的值传递至 Mobile Ads SDK。只有在用户同意数据处理的情况下,才会处理适用 GDPR 区域的用户的数据。