У меня возникла проблема при попытке сравнить результат HttpResponse с простой строкой.
То, что делает код ниже, это просто получение ответа Http-запроса.
В этом случае результат запроса прост: «хорошо», но когда я пытаюсь сравнить его с другой строкой, условие не работает.
Я могу показать ответ через тост-сообщение ... чтобы отладить его и подтвердить, что это то, что я ожидаю, но я не знаю, почему условие не работает.
Спасибо заранее.
imports go here...</p>
<p>public class HttpTest extends Activity {</p>
<pre><code>public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
DownloadWebPageTask task = new DownloadWebPageTask();
task.execute(new String[] { "http://www.ecoeficiencia-ambiental.com/test/" });
}
private class DownloadWebPageTask extends AsyncTask<String, Void, String> {
protected String doInBackground(String... urls) {
String response = "";
for (String url : urls) {
DefaultHttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
try {
HttpResponse execute = client.execute(httpGet);
InputStream content = execute.getEntity().getContent();
BufferedReader buffer = new BufferedReader(new InputStreamReader(content));
String s = "";
while ((s = buffer.readLine()) != null) {
response += s;
}
} catch (Exception e) {
e.printStackTrace();
}
}
return response;
}
protected void onPostExecute(String result) {
if(result == "ok"){
Toast.makeText(HttpTest.this, result, Toast.LENGTH_LONG).show();
}else{
Toast.makeText(HttpTest.this, "the conditional fails, the result is: "+result, Toast.LENGTH_LONG).show();
}
}
}
}
Примечание: манифест имеет разрешение на использование Интернета.
и код, и URL работают.