Невозможно удалить первую и последнюю запись таблицы при использовании @Delete аннотации Room Android - PullRequest
0 голосов
/ 18 июня 2019

Я использую Room for Database и код для удаления строки, работающий должным образом при удалении последней записи таблицы, но не работающий, когда я удаляю середину первой записи.

DAO.class

@Delete
void deleteProduct(Product product);

Repository.class

public void deleteProduct(final Product product) {
    new AsyncTask<Void, Void, Void>() {
        @Override
        protected Void doInBackground(Void... voids) {
            productDatabase.daoProduct().deleteProduct(product);
            return null;
        }
    }.execute();
}

Вызов метода

ProductList<Product> productsList;   //productsList contain records
productRepository.deleteProduct(productsList.get(position));

или работает правильно, когда я удаляю все записи в цикле

            for (Product product : productsList) {
            productRepository.deleteProduct(product);
        }

Поэтому, пожалуйста, помогите мне определить проблему.

...