ページ

2013/06/17

[Android]Google Analytics for Android でオプトアウトを実装する

[Android]Google Analytics for Android SDKを使う | DevAchieveで書いたように
Google Analytics を実装する場合はユーザーに通知して同意を得るか
オプトアウトできるようにする必要がある。
Advanced Configuration - Android SDK - Google Analytics — Google Developers
You can enable an app-level opt out flag that will disable Google Analytics across the entire app. Once set, the flag will persist for the life of the app or until it is reset.
the life of the app ってライフサイクルの終わりまででいいんだろうか?
アンインストールするまで?

// Google Analytics Opt-Out
if(PreferenceUtil.getBoolean(this, getString(R.string.isOptOutRequested), false)){
    boolean isOptOut = PreferenceUtil.getBoolean(this, getString(R.string.isOptOut), false);
    GoogleAnalytics.getInstance(this).setAppOptOut(isOptOut);
}else{
    PreferenceUtil.putBoolean(this, getString(R.string.isOptOutRequested), true);
    showOptOutDialog();
}
上記で初回に Google Analytics を使用するが問題ないか尋ねてその結果をセットする。
GoogleAnalytics.getInstance(this).setAppOptOut(true);
PreferenceUtil.putBoolean(this, getString(R.string.isOptOut), true);
一回セットすればアプリ全体で機能が有効/無効切り替えることができる。

requestAppOptOut でオプトアウト状況を取得することができるけど
普通に SharedPreferences に持っていた方が良いような気がする。