アプリのウェブサイトからJSONオブジェクトを取得するクラスがあります。残念ながら、特定の電話でエラー400'Bad Request'の結果コードが発生し、ほとんどの電話がこのコードで問題なく動作するという問題が発生しました。
これがすべての電話で機能するとは限らない人を知っている人はいますか?
public class MyAppJSON {
private String params;
public MyAppJSON(String params) {
this.params = params;
}
public JSONObject readJSON() {
JSONObject result = null;
StringBuilder builder = new StringBuilder();
HttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://www.myapp.com/json.php?action=" + this.params);
try {
HttpResponse response = client.execute(httpGet);
StatusLine statusLine = response.getStatusLine();
int statusCode = statusLine.getStatusCode();
if (statusCode == 200) {
HttpEntity entity = response.getEntity();
InputStream content = entity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(content));
String line;
while ((line = reader.readLine()) != null) {
builder.append(line);
}
}
else {
Log.e(MyAppJSON.class.toString(), "Failed to download file");
}
result = new JSONObject(builder.toString());
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
}
return result;
}
}