我正在从PHP文件中检索JSON对象到我的Android应用程序。其中一个对象属性是图像文件名。所有图像都托管在Web文件夹中。
此时,object属性是图像文件名,但我需要文件的完整URL才能在应用程序上显示图像。
我应该怎样做才能获得更好的表现:
这是我用来检索JSON数组的代码片段:
protected Void doInBackground(Void... params) {
// Create an array
arraylist = new ArrayList<HashMap<String, String>>();
// Retrieve JSON Objects from the given URL address
jsonobject = JSONfunctions
.getJSONfromURL("http://.../android_ofertaslist_todas.php");
try {
// Locate the array name in JSON
jsonarray = jsonobject.getJSONArray("Categorias");
for (int i = 0; i < jsonarray.length(); i++) {
HashMap<String, String> map = new HashMap<String, String>();
jsonobject = jsonarray.getJSONObject(i);
// Retrive JSON Objects
map.put("valoracionEmpresa", jsonobject.getString("valoracionEmpresa"));
map.put("nombreEmpresa", jsonobject.getString("nombreEmpresa"));
map.put("direccionEmpresa", jsonobject.getString("direccionEmpresa"));
map.put("strImagen", jsonobject.getString("strImagen"));//<--- THIS IS THE IMAGE FILE NAME
// Set the JSON Objects into the array
arraylist.add(map);
}
} catch (JSONException e) {
Log.e("Error", e.getMessage());
e.printStackTrace();
}
return null;
}
答案 0 :(得分:1)
两种方式都会产生相同的效果:
更好的方法是在服务器端添加url字符串并在json中检索图像的绝对路径,这样以后您可以在服务器上更改图像和网址的位置,而无需对您的移动应用程序代码进行任何更改。