2015-10-06 31 views
0

我們嘗試在Android Studio中爲Azure移動服務實現脫機Synch。 我遵循這篇文章來實現這一點。Android Studio中的脫機同步中的Azure移動服務中的過濾器問題

https://azure.microsoft.com/en-us/documentation/articles/mobile-services-android-get-started-offline-data/

有步驟9介紹瞭如何從離線SQLlite數據庫表中獲取表記錄,但不能過濾選項。我可以獲取完整的表記錄,在表上執行ORDER BY並獲取最多幾條記錄,但無法設置WHERE類子句來獲取選定的幾條記錄。如何擴展以下表達式以獲得來自mPullQuery的過濾結果?

final MobileServiceList<ToDoItem> result = mToDoTable.read(mPullQuery).get(); 

有什麼想法?

回答

0

MobileServiceList <>是ArrayList <>的一個實例,它很容易過濾。查看以下帖子,瞭解Java中的ArrayList <>的快速示例:http://www.codeproject.com/Tips/521466/Filtering-a-List-in-java

Android Java實現通常與JDK7兼容,但存在侷限性。這意味着你可以使用你喜歡的任何ArrayList過濾機制。不幸的是,你不能使用更新的基於JDK8謂詞的過濾。

+0

感謝您的回覆,但我需要使用WHERE種語句從離線SQLlite數據庫中進行過濾。這是一種不同的方法,但是對於我想通過記錄ID過濾特定記錄的大量數據不起作用? –

0

您可以修改拉查詢。你提到的教程在第4步的開頭就是這麼做的。

mPullQuery = mClient.getTable(ToDoItem.class).where().field("complete").eq(false); 
相關問題