Намеренное действие при очистке данных для Сервисов Google Play - PullRequest
0 голосов
/ 07 января 2019

Я хочу получать уведомления при очистке данных сервисов Google Play.

Итак, есть ли фильтр Intent для прослушивания?

Я хочу прослушать это событие, чтобы я мог заново зарегистрироваться на геозоны. https://developer.android.com/training/location/geofencing

1 Ответ

0 голосов
/ 07 января 2019

Это возможно с намерением android.intent.action.PACKAGE_DATA_CLEARED.

Добавьте получателя к AndroidManifest.xml, как для любого намерения:

<receiver
    android:name=".DataClearedReceiver">
    <intent-filter>
        <action android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
        <data android:scheme="package" />
    </intent-filter>
</receiver>

В вашем DataClearedReceiver теперь вы можете использовать:

override fun onReceive(context: Context, intent: Intent) {
    if (Intent.ACTION_PACKAGE_DATA_CLEARED.equals(intent.getAction()) && intent.getData() != null) {
        if (data.getSchemeSpecificPart() == "com.google.android.gms") {
           // perform action
        }
    }
}
...