2013-11-07 1 views
0

вместо статического ввода значений для 'the_json', как передать содержимое json php на 'the_json'. это мой кодкак передать json из php в константу строки

try 
    { 
     String the_json = "{'profiles': [{'name':'john', 'age': 44}, {'name':'Alex','age':11}]}"; 
     JSONObject myjson = new JSONObject(the_json); 
     JSONArray the_json_array = myjson.getJSONArray("profiles"); 
     int length = the_json_array.length(); 
    for (int i = 0; i < length; i++) 
     { 
     JSONObject another_json_object = the_json_array.getJSONObject(i); 
     String artist_name = another_json_object.optString("name").toString(); 
     models.add(new Model(R.drawable.ic_drawer, artist_name,"12")); 
     } 

    } 

EDIT: Пробовал это ... ничего не произошло

String url="http//10.0.2.2/jan/android/fave.php"; 

     DefaultHttpClient httpClient = new DefaultHttpClient(); 
     HttpPost httpPost = new HttpPost(url); 

     HttpResponse httpResponse = httpClient.execute(httpPost); 
     HttpEntity httpEntity = httpResponse.getEntity(); 

     is = httpEntity.getContent(); 
     BufferedReader reader = new BufferedReader(new InputStreamReader(
       is, "iso-8859-1"), 8); 
       String the_json = reader.readLine(); 
     JSONObject myjson = new JSONObject(the_json); 
     JSONArray the_json_array = myjson.getJSONArray("products"); 
     int length = the_json_array.length(); 
    for (int i = 0; i < length; i++) 
     { 
     JSONObject another_json_object = the_json_array.getJSONObject(i); 
     String artist_name = another_json_object.optString("title").toString(); 
     models.add(new Model(R.drawable.ic_drawer, artist_name,"12")); 
     } 
+0

Не уверен, что вы подразумеваете под «передачей json-содержимого php». Если PHP-страница на вашем веб-сервере отвечает с помощью JSON, вы можете получить ее с помощью веб-запроса. –

+0

да, он отвечает JSON, как я могу сделать веб-запрос и передать его «the_json»? –

+0

вы пробовали его немного? Что-то вроде «android выполнить http-запрос»? – Blackbelt

ответ

0

Не уверен, что вы имели в виду, если ваш PHP URL дает объект JSON, U можно получить, что при использовании метода HttpGet in android

Код приводится ниже.

String url="http//"myurl.php"; 

      HttpGet httpGet = new  HttpGet(url);  

      httpGet.setHeader("name of header", "value of heder")); 
       HttpResponse response = null; 
      if(mHttpClient != null || !mHttpClient.equals(null) || !mHttpClient.equals("")) 
      { 
      response = mHttpClient.execute(httpGet); 
      } 
      else 
      { 
      mHttpClient = getClient(); 
      response = mHttpClient.execute(httpGet); 
      } 
      BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8")); 
      String the_json = reader.readLine(); 

и продолжить с кодом ..

Пожалуйста, игнорируйте, если это не то, что вы имели в виду.

+0

да, это то, что им нужно, но код дает мне ошибки ... mHTTPClient не может быть разрешен переменной, я не знаю, что с этим делать ... и мне нужно изменить значения httpGet.setHeader? –

+0

HttpClient mHttpClient = DefaultHttpClient(); –

Смежные вопросы