監管部門要求在使用者點擊隱私協議彈框中 同意 按鈕之前,App 不可以調用相關敏感 API。為應對此監管要求,mPaaS Android 10.1.68 基準的全部版本、10.1.60 基準的 10.1.60.5 及以上版本和 10.1.32 基準的 10.1.32.16 及以上版本對此要求進行了支援。如果您的工程接入了 架構 組件,請參考本文檔對工程進行改造。
使用說明
您需要在應用中彈出隱私許可權彈窗,並在使用者點擊同意之後調用架構的介面發送 同意 的廣播,架構收到廣播後會完成初始化,還會在 sharedpreference 中記錄使用者同意的行為,初始化完成時通過回調的方式通知您。您只有收到回調後,才能正常使用 mPaaS 各組件的能力。
操作步驟
彈出隱私彈框的 Activity 不可以繼承 mPaaS 的 BaseActivity,因為 BaseActivity 會進行埋點資料擷取,會導致 App 在同意隱私政策之前採集隱私資料。
在
meta-data中配置隱私許可權彈框的開關。該配置的預設狀態是關閉。<meta-data android:name="privacy_switcher" android:value="true"></meta-data>使用以下介面,發送 同意 的廣播。
說明只有在單擊 同意 後才發送廣播。
QuinoxlessPrivacyUtil.sendPrivacyAgreedBroadcast(Context context);使用者是否已經同意隱私許可權的使用。
說明調用此 API 時,請先初始化 mPaaS 架構。
QuinoxlessPrivacyUtil.isUserAgreed(Context context);更新使用者同意使用隱私許可權的標記,可以方便您在特定的情境下再次彈窗。
QuinoxlessPrivacyUtil.setUserAgreedState(Context context, **boolean **agreed);架構初始化完成的回調。
使用
QuinoxlessApplicationLike:需要在onMPaaSFrameworkInitFinished之後使用 mPaaS 的能力。說明如果您需要使用熱修複功能則必須使用
QuinoxlessApplicationLike。未使用
QuinoxlessApplicationLike:需要在IInitCallback的onPostInit之後使用 mPaaS 的能力。QuinoxlessFramework.setup(this, new IInitCallback() { @Override public void onPostInit() { } });
如果您使用的是 10.1.68.42 及以上版本基準且需要清除隱私狀態,請在以上所有調用之前調用
QuinoxlessPrivacyUtil.clearPrivacyState(context);。