将URL添加到图像名称

时间:2014-04-16 16:25:43

标签: php android json

我正在从PHP文件中检索JSON对象到我的Android应用程序。其中一个对象属性是图像文件名。所有图像都托管在Web文件夹中。

此时,object属性是图像文件名,但我需要文件的完整URL才能在应用程序上显示图像。

我应该怎样做才能获得更好的表现:

  1. 在执行JSONencode函数之前,将URL字符串添加到PHP文件的文件名中?
  2. 从Web服务器接收JSON数组后,将URL字符串添加到应用程序代码的文件名中?
  3. 这是我用来检索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;
            }
    

1 个答案:

答案 0 :(得分:1)

两种方式都会产生相同的效果:

  1. 在执行JSONencode函数之前,将URL字符串添加到PHP文件的文件名中?
  2. 从Web服务器接收JSON数组后,将URL字符串添加到应用程序代码的文件名中?
  3. 更好的方法是在服务器端添加url字符串并在json中检索图像的绝对路径,这样以后您可以在服务器上更改图像和网址的位置,而无需对您的移动应用程序代码进行任何更改。