Android アプリで Parse.com を使用しています。ユーザーがアイテムに削除のマークを付けることができる共同ショッピングリストを作成しています (アイテムは灰色になります) が、同期ボタンを押したときにのみ実際に削除されます (ネットワークが利用可能です)。現在、オブジェクトは解析データベースから消去されますが、ローカル データストアからは消去されません。私はこれを試しています:
ParseQuery<ShoppingItem> queryDeletes = ShoppingItem.getQuery();
queryDeletes.fromPin(MyApplication.ALL_ITEMS);
queryDeletes.whereEqualTo("isDeleted", true);
queryDeletes.findInBackground(new FindCallback<ShoppingItem>() {
@Override
public void done(final List<ShoppingItem> items, ParseException e) {
if (e == null) {
ShoppingItem.deleteAllInBackground(items, new DeleteCallback() {
@Override
public void done(ParseException e) {
if (e == null) {
ShoppingItem.unpinAllInBackground(items, new DeleteCallback() {
@Override
public void done(ParseException e) {
if (e == null) {
if (!isFinishing()) {
shoppingListAdapter.loadObjects(); // update the list view
}
}
}
});
}
}
});
}
}
});
}
アプリのデータをクリアし、ShoppingItem で equals() をオーバーライドしようとしましたが、成功しませんでした。何か案は?
ありがとう!