Потеря данных после android обновления приложения - PullRequest
1 голос
/ 03 февраля 2020

У меня есть приложение android с 130K пользователями, и очень немногие пользователи (0-6) сообщают, что их данные очищаются после того, как они обновили приложение из playstore.

Я проверил устройство и нашел все Данные в каталоге данных приложения полностью очищаются даже в лог-файле. Конечно, нет кода, который удаляет все файлы в данных приложения.

У меня есть два вопроса.

Q1. У кого-нибудь есть такой же опыт?

Q2. Возможная причина и любые обходные пути?

В AndroidManifest. xml, "allowBackup" - true, и установите "fullBackupContent" с моим правилом. Вот мой код инициализации.

public class MyApp extends Application {
    private static KKApp instance = null;
    private Realm _realm;
    private Activity _mainActivity;

    public static void setRealm(Realm realm){
        instance._realm = realm;
    }
    public static Realm getRealm(){
        return instance._realm;
    }

    public static void setMainActivity(Activity activity) { instance._mainActivity = activity; }
    public static Activity getMainActivity() { return instance._mainActivity; }

    @Override
    public void onCreate() {
        super.onCreate();
        instance = this;
        Realm.init(this);
    }
    ...
}


public class MainActivity extends AppCompatActivity implements FlickHandler, SimpleCallback, ErrorHandler {
    ...
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        KKApp.setMainActivity(this);
        openDataBase(FILE_NAME)
    }

    private void openDataBase(String fileName){
        try{
            RealmConfiguration config = new RealmConfiguration.Builder()
                    .name(fileName)
                    .schemaVersion(Migration.SCHEME_VERSION)
                    .migration(new Migration())
                    .build();
            KKApp.setRealm(Realm.getInstance(config));
        }
        catch (Exception e){
            ...
        }
    }
...
}

Любая помощь будет оценена.

...