У меня есть класс AsyncTask, который подключается к localurl.соединение не возвращает никаких исключений.На самом деле, когда я запускаю приведенный ниже код на Eclipse как обычный Java-проект, он прекрасно работает.
код в Android Studio:
package parsa.lop.adjust;
import android.os.AsyncTask;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
public class SendDietInfo extends AsyncTask<String, Void, String> {
private PatientMain activity;
public SendDietInfo(PatientMain activity){
this.activity = activity;
}
@Override
protected String doInBackground(String... strings) {
try{
URL url = new URL("http://10.0.0.3/a.php/");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("POST");
con.setDoInput(true);
con.setDoOutput(true);
BufferedReader reader = new BufferedReader(
new InputStreamReader(con.getInputStream(),"UTF-8"));
StringBuilder str = new StringBuilder();
while(reader.ready()){
str.append(reader.readLine());
}
String s = str.toString();
reader.close();
System.out.println(s);
return s+",,,";
}catch(Exception e){
return e.getMessage();
}
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
activity.sendDietInfoDone(s);
}
}
и адрес http://10.0.0.3/a.php/
лежит
<?php
echo "hello world"
?>
как получается, что внутренний код в методе doInBackground
прекрасно работает в eclipse и возвращает привет, но android studio - нет.Я добавил, что добавил интернет-разрешение, и между тем не происходит никаких исключений.проблема только в том, что привет мир не возвращается.печатается пустая строка.