Как применить удаление записей из API к приложению, подключенному к этому API? - PullRequest
0 голосов
/ 01 сентября 2018

Мое приложение Android подключено к API. Он извлекает данные, хранит их в базе данных устройства, и, если у устройства нет подключения, он отображает данные из локальной базы данных как приложение с хорошим поведением. Теперь проблема в том, что если я удалю что-то на удаленном сервере, это не отразится на базе данных устройства. Это Django API с MySQL, размещенный на PythonAnywhere.com.

Ниже приведен метод в хранилище действия, которое извлекает данные и сохраняет их в базе данных устройства.

fun fetchPosts() {
    remote.fetchPosts()
        .doOnNext { posts -> local.insert(posts) }
        .onErrorResumeNext { _: Throwable -> Observable.fromCallable { local.fetchPosts() } }
        .subscribeOn(Schedulers.io())
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe(
            { outcome.success(it) },
            { error: Throwable -> outcome.failed(error) }
        ).addTo(compositeDisposable)
}

Есть что-то сделать? Я предполагаю, что уничтожение всех данных в локальной базе данных и вставка новых данных были бы не очень хорошими, но я не могу придумать другую альтернативу.

...