Выполнение сетевых операций в главном потоке не разрешено. Вы можете использовать AsyncTask для выполнения таких операций и обработки результата в методе onPostExecute
.
class YourNetworkingTasks extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... voids) {
try{
HttpServices post = new HttpServices ("http://sotem.com.mx/WebServices/controller.php");
post.add("funcion", "test");
String respuesta = post.getRespueta();
Log.d("Output", respuesta);
// DON'T DO ANY UI CHANGES LIKE TOAST FROM BACKGROUND THREAD.. Toast.makeText(getApplicationContext(),"Cool: "+respuesta, Toast.LENGTH_SHORT).show();
}catch (Exception ex) {
// DON'T DO ANY UI CHANGES LIKE TOAST FROM BACKGROUND THREAD.. Toast.makeText(getApplicationContext(),"error: "+ex.toString(), Toast.LENGTH_SHORT).show();
}
return null;
}
protected void onPostExecute(RSSFeed feed) {
// TODO: YOU CAN MAKE U.I. Changes Like Display text in TextView, TOAST HERE.
// TODO: do something with the result
}
}
И напишите new YourNetworkingTasks().execute();
, чтобы запустить этот код в фоновом потоке.
Обратите также внимание, что, поскольку вы используете http , а не https , вы можете получить Исключение сетевой безопасности и не получить никакого вывода из-занедавнее изменение безопасности в Android.