BackupManager requestRestore() устарел, какова альтернатива?
Кто-нибудь знает, что я могу теперь использовать для запроса данных для синхронизации на Android с помощью BackupManager?
Документы утверждают, что метод теперь устарел, но не предлагают эквивалентный вызов / вызов замены для этого метода. Я знаю, что синхронизация выполняется при первой установке приложений, но это похоже на правду?
Я надеюсь использовать SharedPreferences и BackupManager для синхронизации пар "ключ / значение" между устройствами, подключенными к учетной записи пользователя.
0 ответов
BackupManager backupManager = (BackupManager) getSystemService(BACKUP_SERVICE);
RestoreSession restoreSession = backupManager.beginRestoreSession();
if (0 != restoreSession.getAvailableRestoreSets(new android.app.backup.RestoreObserver() {
@Override
public void restoreSetsAvailable(RestoreSet[] result) {
if (result != null && result.length > 0) {
if (0 != restoreSession.restoreAll(result[0].token, new android.app.backup.RestoreObserver() {
@Override
public void restoreFinished(int error) {
Log.d(TAG, "succeed to restoreAll");
}
})) {
Log.d(TAG, "fail to restoreAll");
restoreSession.endRestoreSession();
}
} else {
Log.d(TAG, "restore database is empty");
restoreSession.endRestoreSession();
}
}
})) {
Log.d(TAG, "fail to getAvailableRestoreSets");
restoreSession.endRestoreSession();
}