Para iniciarse con esto, una buena recomendación que les puedo dar es esta librería y empecemos.
Primero descargamos la librería , es un .jar:
Ahora en el paquete llamado app de nuestro árbol de archivos del proyecto:
Hacemos click derecho y de ahí:
new->Module
y nos debe de lanzar a la siguiente ventana:
Y elegimos importar .jar
Ahora nos lanzara a una ventana donde elegiremos la ruta de nuestro archivo .jar que descargamos de la pagina.
Ahora nos vamos a build.gradle (Module:app) y agregamos lo siguiente en dependencies:
compile 'com.loopj.android:android-async-http:1.4.7'
Y ahora veamos la pagina con la que vamos a interactuar en el servidor:
La tabla de la base de datos que consultaremos es:
Todo la comunicación la usaremos desde un método que llamaremos ObtDatos(), lo que se va hacer es obtener los datos de apellido, edad y puntos y los mostraremos en un listView,
public void ObtDatos()
{
AsyncHttpClient client=new AsyncHttpClient();
String url="http://192.168.61.13/loggeo.php";
RequestParams parametros= new RequestParams();
EditText nombre=(EditText)findViewById(R.id.NombreLgoTxt);
parametros.put("Nombre",nombre.getText().toString());
client.post(url, parametros, new AsyncHttpResponseHandler() {
@Override
public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
if (statusCode == 200) {
//Llamar a la funcion
CargarLista(obtDatosJSON(new String(responseBody)));
Log.i("Respuesta:", new String(responseBody));
Log.i("Datos:", "No Fallo");
}
}
@Override
public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
Log.i("Datos:", "Maldad: Fallo");
}
});
}
public void CargarLista(ArrayList datos)
{
ListView listView=(ListView)findViewById(R.id.listViewLoggeo);
ArrayAdapter adapter=new ArrayAdapter(this,android.R.layout.simple_list_item_1,datos);
listView.setAdapter(adapter);
}
public ArrayList obtDatosJSON(String resupesta)
{
ArrayList listado=new ArrayList();
try
{
JSONObject jsonObject= new JSONObject(resupesta);
String texto="Nombre="+jsonObject.getString("Nombre");
listado.add(texto);
texto="Apellido="+jsonObject.getString("Apellido");
listado.add(texto);
texto="Edad="+jsonObject.getString("Edad");
listado.add(texto);
texto="Puntos="+jsonObject.getString("Puntos");
listado.add(texto);
}catch (Exception error)
{
}
return listado;
}
Hacemos una interfaz parecida a esta:
Liga xml
Al correr la aplicación tendremos:
Espero les haya servido este tutorial, por su atención gracias!
Fuentes:
https://www.youtube.com/watch?v=oLm_5GKHJCI consultada el 16 de julio del 2015.