朋友:
我在Android上收到来自远程服务器的响应:
{
"items": {
"persons": [
{
"id": "200120",
"name": "Bill"
},
{
"id": "200121",
"name": "Jim"
}
],
"tasks": [
{
"id": "001",
"name": "Fetch ten books",
"deadline": "5:30 p.m.",
"scores": "10"
},
{
"id": "002",
"name": "Fetch thirty books",
"deadline": "5:30 p.m.",
"scores": "30"
}
],
"intro": "This is a funny game."
},
"otherObj": []
}
我想把它保存到手机上。我不认为将它保存到数据库中是一个不错的选择。但是,如果将响应放到SharedPreferences
文件中,则读取速度不快。还有其他办法吗?
答案 0 :(得分:1)
无需将此数据保存到数据库中,因为这些值是动态的,并且会不时更改。
在您的Activity中,调用API并获取JSON作为响应,然后解析此JSON并将其显示在设备上。
要将其存储在设备上,您也可以使用Singleton类。
对于JSON解析器,请参阅http://www.tutorialspoint.com/android/android_json_parser.htm
答案 1 :(得分:0)
您可以先将数据保存到对象中,最后保存到Object Array中,然后保存到数据库中。(如果您的数据是动态的,最好只处理Object而不是数据库)
要保存到数据库,您可以使用
db.beginTransaction();
for(object : ObjectArray){
db.dboperation();
}
db.setTransactionSuccessful();
db.endTransaction();