Android - 如何通过不下载整个数组来搜索和获取JSON中的元素?

时间:2014-11-10 01:46:58

标签: android arrays json

我目前正在开发一个用户必须登录其帐户的简单应用。为了登录帐户,我必须从JSON中搜索包含用户名和密码的特定元素,但我必须避免下载整个JSON数组。这可能吗?如果没有,我应该做什么是正确的实施。不要担心这个例子的安全性,因为它只是一个例子,我不应该看到你对这个问题的答案。谢谢!

例如,这就是我的JSON数组的样子:

"UserAccount":[
    {"username":"John", "password":"123"}, 
    {"username":"Anna", "password":"456"}, 
    {"username":"Peter", "password":"789"}
] 

2 个答案:

答案 0 :(得分:0)

您可以使用流解析器,例如

http://developer.android.com/reference/android/util/JsonReader.html

它的工作方式类似于SAX XML解析器。问问自己一个问题:值得吗?如果JSON很小,你将无法获得任何收益。如果它很大 - 你可能有设计问题。

答案 1 :(得分:0)

另一种方法是将用户名和密码作为参数放在API中,当用户名和密码匹配时返回OK,否则返回FALSE。 之后,您可以下载特定于用户的JSON字符串。