lunes, 7 de marzo de 2016

Tutorial 27, 28 y 29 Como conectarse a una base de datos MySQL con la aplicación Android

Hola, en esta oportunidad traemos un tutorial muy interesante y que les va a servir mucho en sus proyectos Android, hoy aprenderemos a conectarnos a una base de datos MySQL a través de php con nuestra App en Android, la particularidad de estos videos es que  trabaja con la libreria HttpUrlConnection y no con la HttpClient, que ya esta deprecated desde la api 23 de android 6.0,

En el primer video aprenderas a crear la base de datos y crear el servicio web en php para registrar y consultar datos
En el segundo vídeo se realiza la interfaz grafica y se dan a conocer los metodos que permiten la conexion, que permiten consumir el webservice
En el tercer video se realiza la consulta y el registro programando los respectivos botones

Para descargar el proyecto puedes dar clic aqui






39 comentarios:

  1. Buenas noches. quisiera saber si me podrias ayudar, he hecho todo lo que dices en el tutorial pero no hace conexion con la base de datos, he descargado tu aplicacion y me sale el mismo inconveniente

    08-20 01:51:46.822 2233-2239/smartgeeks.co.tutorial28 W/art: Suspending all threads took: 28.518ms
    08-20 01:52:26.176 1003-1003/? I/perfprofd: profile collection skipped (running in emulator)
    08-20 01:53:27.126 2233-2309/smartgeeks.co.tutorial28 I/URL: http://127.0.0.1/CursoAndroid/registro.php?nombres=kiara&tel=54565767
    08-20 01:53:30.691 2233-2308/smartgeeks.co.tutorial28 E/Surface: getSlotFromBufferLocked: unknown buffer: 0xabd88890
    08-20 01:54:10.100 2233-2239/smartgeeks.co.tutorial28 W/art: Suspending all threads took: 9.000ms
    08-20 01:54:20.618 2233-2239/smartgeeks.co.tutorial28 W/art: Suspending all threads took: 11.116ms
    08-20 01:54:22.123 2233-2239/smartgeeks.co.tutorial28 W/art: Suspending all threads took: 6.489ms
    08-20 01:54:35.651 2233-2239/smartgeeks.co.tutorial28 W/art: Suspending all threads took: 5.924ms
    08-20 01:54:59.213 2233-2239/smartgeeks.co.tutorial28 W/art: Suspending all threads took: 8.168ms
    08-20 01:55:14.566 2072-12287/com.google.android.gms I/MS_RegisterService: RegisterService intent:Intent { act=com.google.android.gms.matchstick.register_intent_action (has extras) } isPeriodic:false
    08-20 01:55:14.610 2072-12287/com.google.android.gms I/MS_RegisterService: Phone type: 1
    08-20 01:55:14.615 2072-12287/com.google.android.gms I/MS_RegisterService: Doing full registration.
    08-20 01:55:14.987 2072-12287/com.google.android.gms I/MS_RegisterService: Throttling registration.
    08-20 01:55:14.991 2072-12287/com.google.android.gms W/MS_WakeLockHelper: Call to release wakelock: register_service_start_wakelock, but not held.
    08-20 01:55:56.700 2233-2239/smartgeeks.co.tutorial28 W/art: Suspending all threads took: 22.251ms
    08-20 01:57:11.881 2233-2239/smartgeeks.co.tutorial28 W/art: Suspending all threads took: 13.520ms

    ResponderEliminar
    Respuestas
    1. Probaste si los archivos php conectan con la base de datos?

      Eliminar
  2. Hola amigo ! tu tutorial esta muy bueno felicidades ! una pregunta, cuando quiero hacer la consulta ya adaptado a lo que mi app requiere no me imprime nada u,u me podrias ayudar?

    ResponderEliminar
    Respuestas
    1. Tendria que revisar puntualmente, pero la manera de hacerlo es primero verificar si tus consultas funcionan en un explorador web, pruebas los archivos pho si estos funcionan pasarias a revisar a la hora de imprimirlos alli deberia estar el error

      Eliminar
  3. muy buen día, quisiera saber si estas tareas pueden hacerse repetidamente, es decir, cada "x" tiempo haga la consulta a la base de datos y traiga los datos, para así eliminar el botón, por favor orienteme

    ResponderEliminar
  4. hola cesar, excelente video tutorial...

    ResponderEliminar
  5. Me podrias pasar el codigo php mi correo : alexcarias147103@gmail.com

    ResponderEliminar
  6. Excelente Tutorial!!...oye podrias enviarme los php a mi correo?
    te lo agradeceria mucho...
    innatronix@outlook.com

    ResponderEliminar
  7. muchas gracias por el video podrias enviarme el php a mi correo? naomi200971@hotmail.com

    ResponderEliminar
  8. Hola... muy buen tutorial.. pero oye, no puedo conseguir imprimir toda la tabla... como puedo hacer esto? :(

    ResponderEliminar
  9. Hola
    Excelente Tutorial.
    Muchas gracias

    ResponderEliminar
  10. Hol muchas gracias por tu tutorial pero cuando estoy escribiendo los php y los quiero ejecutar ya no me arroja nada

    ResponderEliminar
  11. saludos, muy buenos los tutoriales, solo faltaron los archivos php, si lo suben se los voy agradecer mas

    ResponderEliminar
    Respuestas
    1. https://www.dropbox.com/s/f2wu58ls3shcppw/CursoAndroid.rar?dl=0

      Eliminar
  12. hola muy buen tutorial amigo me puedes pasar los códigos de php porfa aldomar220695@gmail.com

    ResponderEliminar
  13. jlitardolsolis@sisproec.com comunicate conmigo

    ResponderEliminar
  14. Buen día Cesar,

    Primero, agradecerte por tu labor compartiendo tus conocimientos que en lo personal me han servido de mucho.

    Segundo, comentarte que tengo problemas con los acentos, mientras no utilice palabras con acentos todo funciona muy bien el problema viene cuando las uso.

    Por ejemplo cuando utilizo acentos.

    http://fotos.subefotos.com/402b0eae8c511af70033a7068f59464eo.png

    Ahora bien, he investigado y encontré lo siguiente.

    Después de mi cadena de conexión coloco la siguiente linea:

    $mysqli->set_charset("utf8");


    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    ::::De la siguiente manera:::::
    function getSQLResultSet($commando){


    $mysqli = new mysqli("localhost", "myuser", "mypassword", "mybase");
    $mysqli->set_charset("utf8");

    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

    Luego en el archivo consulta.php agrego al JSON_encode "JSON_UNESCAPED_UNICODE"

    Quedando asi:

    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

    while ($row = $resultset->fetch_array(MYSQLI_NUM)){

    echo json_encode($row, JSON_UNESCAPED_UNICODE);
    }

    :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

    Y de inmediato me admite los acentos como se ve en la imagen

    http://fotos.subefotos.com/d281dbbba6e3500aab60212279331f36o.png


    Hasta ahi todo parece ir bien, pero ahora en Android Studio el JSONArray no me devuelve nada todo es null.


    Cesar, te agradezco me orientes en una solución o me guíes para poder solucionar el problema.

    Nota: Cuando utilizo acentos pero no modifico los archivos para que me reconozca los acentos, el JSONArray tampoco me arroja ningún resultado.


    Agradezco tu amable colaboración.

    ResponderEliminar
  15. Hola! me gustaron tus videos... solo una duda tengo exactamente el codigo como lo tienes tu pero no me funciona (no registra nada). y en la app me dice que si se insertaron correctamente los datos pero no los muestra en phpmyadmin :/
    y si le puse mi direccion ip de mi maquina a mi app (tendra algo que ver que estoy conectada de wifi? y no por la cableada?)

    ResponderEliminar
  16. Hola Cesar, quisiera pedir una asesoría sobre un proyecto que estoy desarrollando, requerimos de tus servicios como asesor como te puedo contactar, mi correo es ing.omartinez@gmail.com

    ResponderEliminar
  17. Buenas noches.

    Queria saber si me puedes ayudar a realizar una validación para los formularios de registro, deseo realizar una reconfirmacion de contraseña, es decir colocan la contraseña en el campo1 y cuando la esta confirmando en el campo2 nos diga que no es igual hasta que la escriban exactamente como en el campo1, me podrias ayudar??

    ResponderEliminar
  18. Holaa, me parecio muy util tu tutorial, pero cuando ingreso los datos me dice que se guardo todo correctamente, pero en mysql no hace nada... no se guarda niun registro

    ResponderEliminar
  19. Hola me gustaria saber porque al ejecutar mi proyecto en android me sale este error W/System.err: org.json.JSONException: Value Unable of type java.lang.String cannot be converted to JSONArray

    ResponderEliminar
  20. hola muy bueno tu tutorial, aprovecho para decirte que subieras un tutorial de como ver los datos guardado en la base de datos en una tabla, gracias espero tu respuesta

    ResponderEliminar
  21. hola muy buen tutorial me podrias pasar los codigos por fa
    a mi correo acarapi566@gmail.com

    ResponderEliminar
  22. tienes mas tutoriales de android como para una persona principiante esta muy bueno tus videos

    ResponderEliminar
    Respuestas
    1. http://smartgeeksco.blogspot.com.co/2017/12/curso-desarrollo-de-aplicaciones.html

      Eliminar
  23. Excelente Vídeo pero una pregunta, tengo la pagina en PHP haciendo las cosas basicas(Insertar, Eliminar, Editar).
    pero quisiera que me ayudaras a saber como puedo en un ListView mostrar los datos de mi BD.

    ResponderEliminar
    Respuestas
    1. mira te comparto todo el curso, revisa el video 34 http://smartgeeksco.blogspot.com.co/2017/12/curso-desarrollo-de-aplicaciones.html

      Eliminar
  24. mira te comparto todo el curso, revisa el video 34 http://smartgeeksco.blogspot.com.co/2017/12/curso-desarrollo-de-aplicaciones.html

    ResponderEliminar
  25. hola muy buen tutorial amigo me puedes pasar los códigos de php porfa erickboxga@gmail.com

    ResponderEliminar
  26. Hola buenas noches, me gustaría saber como hacer una consulta UPDATE, así mismo en .PHP

    ResponderEliminar
  27. hola ocupo una ayuda nesecito que me contactes o contactarte por whatsapp +50685493857

    ResponderEliminar
  28. Cuando haces la consulta por el "id", si no existe como lo puedo comprobar y mandar un mensaje con el Toast al usuario que no existe el id?

    ResponderEliminar
  29. hola muy buen tutorial amigo me puedes pasar los códigos de php porfa agustingerez2@gmail.com

    ResponderEliminar
  30. Cordial saludo ing Cesar Agusto, le escribe Hernan Martínez desde Bogotà, primerpo que todo muchas gracias por compartir estos videos de gran utilidad, espero se encuentre muy bien
    primkero que todo agr5adeciendole `por el pmaterial que ha publicado en youtube sobre desarrollo en Android y otros temas

    Por medio de la presente necesito pedirle el favor con lo siguiente:

    de la pagina de desarrollo de android, despues de tres años en que fue publicado el video, revisando los codigos que provienen d3e la pagina de3 Android,
    estos se han modificado demasiado y pese a que4 estoy realizando el ejemplo de acuerdo a lo que usted nos comparte y con estos tres videos, desafortunbadamente
    veo deemasiados errores en dichos codigo, con las siguientes instrucciones:

    setOnClickListener, DownloadTask, DownloadCallback, NetworkInfo , getActiveNetworkInfo, getType,ConnectivityManager, updateFromDownload,updateFromDownload,
    finishDownloading, replace, publishProgress.

    Vale mencionar que tengo las siguientes librerias, inckuidas al proyecto:

    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Toast;
    import com.google.zxing.Result;
    import org.json.JSONArray;
    import org.json.JSONException;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.Reader;
    import java.io.UnsupportedEncodingException;
    import java.net.URL;
    import javax.net.ssl.HttpsURLConnection;
    import me.dm7.barcodescanner.zxing.ZXingScannerView;

    Lo anterior es por si hace falta una libreria para vincular a la aplicacion.
    Le agreadezco si me puede indicar, la razon de los inconvenientes, muchas gracias.

    Att. Hernán Martínez.






    ResponderEliminar
  31. Hola tengo una duda, lo que pasa es que me confundo donde en el primer video dices que functions pongamos nuestro usuario y contraseña, yo no se como sacar el usuario ni la contraseña y queria saber si podrias ayudarme

    ResponderEliminar