PDA

Ver la Versión Completa : [ SOLUCIONADO ] Programacion app resultados/clasificacion


rinxe
07/10/12, 18:47:27
Buenas amigos del foro, llevo un tiempecito iniciado en la programacion android y he decido empezar a hacer aplicaciones para ir cogiendo marcha en esto de programar.

La idea que tengo es hacer una aplicacion de voley, tengo todo mas o menos hecho o pensado como hacerlo, pero en el apartado de resultados y clasificacion tengo una activity con un WebView que enlaza a la pagina web del voleibol para ver resultados y clasificacion pero no me termina del todo.

Entonces mi duda es que si puedo hacer una Activity sin webview, que muestre resultados y clasificacion, estos resultados y clasificacion los actualizaria yo. Y la aplicacion cada vez que entraras en ese apartado se actualizara con los resultados que tengo yo.

Haber si alguien me hecha un cable porque no se como buscar esto en internete,

rinxe
08/10/12, 10:25:53
Me autorespondo, jejejj, creo que he dado con una posible solucion, seria crear una base de datos sqlite y esta se veria en un tablelayout o similar.

Entonces yo iria editando la sqlite y subiendola a algun servidor. La app cada vez que entres a ella o en el apartado de resultados/clasificacion se descargue el nuevo archivo.

Esto seria posible verdad??

kriogeN
08/10/12, 12:20:34
Supongo que es posible, pero es muy chapucero, lo mejor es crear un servicio web (con PHP básico te sobra) al que le preguntas los resultados y te los devuelva en JSON o XML.

Ese servicio web podría consultar los datos en una base de datos MySQL, por ejemplo.

rinxe
08/10/12, 13:30:38
No entiendo tanto como para hacer eso pero gracias por la info, no dejare de hecharle un ojo haber como va eso

sgsbarna
08/10/12, 22:01:59
Me interesa mucho este tema... estoy liado con algo parecido y no doy con ningún tutorial...

Alguien podría orientar para crear todo eso...

Ya toque MySQL y leí sobre PHP... pero aun estoy verde... verde oscuro... tirando a negro.

Enviado desde mi GT-I9000 usando Tapatalk 2

kriogeN
08/10/12, 23:42:36
Me interesa mucho este tema... estoy liado con algo parecido y no doy con ningún tutorial...

Alguien podría orientar para crear todo eso...

Ya toque MySQL y leí sobre PHP... pero aun estoy verde... verde oscuro... tirando a negro.

Enviado desde mi GT-I9000 usando Tapatalk 2

Existen muchas formas de hacerlo, yo lo que hago es enviar un fichero XML a una página PHP, la página lo procesa y me envía otro XML como respuesta, que proceso extendiendo un DefaultHandler.

También se puede hacer con JSON, pero es que el JSON para cosas simples está muy bien, pero cuando quieres hacer algo medianamente complejo se vuelve muy complejo (valga la redundancia).

Lo bueno de usar el modelo XML es que para BlackBerry y para IOS la forma de trabajar es practicamente idéntica a Android, concretamente en BlackBerry también funciona extendiendo DefaultHandler, y en IOS también casi igual, sólo que extendiendo una clase de Apple. Y mientras que JSON funciona perfectamente también en BlackBerry, en el caso de IOS no está soportado en IOS 4, y tienes que ir a morir a IOS 5 si quieres usarlo, así que usando XML te aseguras mucha más compatibilidad.

Yo he hecho una misma aplicación para los 3 dispositivos tirando contra el mismo servidor PHP, así que elegí esto por "portabilidad".

sgsbarna
09/10/12, 09:22:43
Existen muchas formas de hacerlo, yo lo que hago es enviar un fichero XML a una página PHP, la página lo procesa y me envía otro XML como respuesta, que proceso extendiendo un DefaultHandler.

También se puede hacer con JSON, pero es que el JSON para cosas simples está muy bien, pero cuando quieres hacer algo medianamente complejo se vuelve muy complejo (valga la redundancia).

Lo bueno de usar el modelo XML es que para BlackBerry y para IOS la forma de trabajar es practicamente idéntica a Android, concretamente en BlackBerry también funciona extendiendo DefaultHandler, y en IOS también casi igual, sólo que extendiendo una clase de Apple. Y mientras que JSON funciona perfectamente también en BlackBerry, en el caso de IOS no está soportado en IOS 4, y tienes que ir a morir a IOS 5 si quieres usarlo, así que usando XML te aseguras mucha más compatibilidad.

Yo he hecho una misma aplicación para los 3 dispositivos tirando contra el mismo servidor PHP, así que elegí esto por "portabilidad".

Muchas gracias a ver si consigo hacerlo... que es lo que creo haría mas personal la App ...

Enviado desde mi GT-I9000 usando Tapatalk 2

rinxe
09/10/12, 15:26:31
Ya me queda algo mas claro los pasos que hay que hacer, aunque no tenga mucha idea de como hacerlo en google parece que hay bastante informacion ;-)

La verdad es que quedara mucho mejor que lo que tenia yo pensado (webview / sqlite en servidor).

sgsbarna
09/10/12, 16:39:57
Yo sigo mas perdido que Álvarez Izquierdo en un campo de fútbol... tendré que centrarme de verdad... si te aclaras comparte tus avances por favor... lo mismo haré yo en caso de adelantarte... suerte.

rinxe
09/10/12, 20:51:04
Pues creo que aun tardare unos dias en mirarlo, porque aun tengo que terminar un par de activities y pulir un poco todo.

Pero tranquilo que si me entero o consigo como hacerlo te lo hare saberr ;-)

rinxe
11/10/12, 00:52:29
He acabado antes de lo que pensaba y ya estoy liado con el servicio web de momento pinta bastante bien, la verdad es que no entiendo mucho del tema pero siguiendo unos tutoriales que he encontrado ya he conseguido instalar un servicio web en mi pc con Apache + MySQL + PHP. Para gestionarlo uso phpMyAdmin, y para crear los scripts php BlueFish.

He creado mi primera tabla con 14 columnas, 10 filas (equipos), los scripts necesarios para su lectura y segun esta web http://jsonlint.com/ mi JSON es valido.

Asi que ya solo me queda el codigo Android, haber si se me da igual de bien :D

Dejo los tutoriales que he seguido para hacer esto (estos primeros son para linux):
http://www.nosinmiubuntu.com/2012/01/prepara-tu-entorno-de-desarrollo-php-en.html
http://www.nosinmiubuntu.com/2012/01/como-crear-servicios-web-php.html
http://www.nosinmiubuntu.com/2012/02/leyendo-servicios-web-desde-android.html

Y estos se supone que son para windows:
http://www.sgoliver.net/blog/?p=2571
http://www.sgoliver.net/blog/?p=2594


PD: gracias por la info kriogeN, no deja de sorprenderme Android, tiene posibilidades infinitas :D

sgsbarna
11/10/12, 13:25:01
Como no... siempre acabo en el Tutorial de el gran Salvador!!!
este tio se lo curra mucho...
pues será cuestión de ponerse manos a la obra...

Gracias...

rinxe
11/10/12, 20:09:08
He conseguido bastante de lo que esperaba, me estaba volviendo loco con el codigo del tutorial y he encontrado otro muy bueno.

http://www.androidhive.info/2012/01/android-json-parsing-tutorial/

Al final lo que he hecho a sido crear una tabla en phpmyadmin, luego he usado BlueFish para crear unos scripts, y ya en el codigo Android simplemente le he dicho que lea esa tabla desde mi localhost y la imprima en un view. El resultado a sido este: (no habia quien metiera esto en portrait, :D)

http://imageshack.us/a/img16/83/screenshot2012101119373v.png (http://imageshack.us/photo/my-images/16/screenshot2012101119373v.png/)

Pero me surgen dudas y algun problemilla:

Solo he conseguido que lea los datos de la tabla con el movil y el pc conectados en la misma red de mi casa, a traves del 3g a sido imposible. He leido algo sobre el tema pero no me queda muy claro. Como puedo hacer visible mi localhost a todo el mundo???

Por cierto deberia tomar alguna precaucion al hacer visible mi localhost o algo???

Creo que le voy pillando la idea a esto, pero hacerlo es otra cosa ;-). Lo suyo seria tener siempre en el movil una tabla SQLite guardada, cada vez que fuera necesario hechar mano de ella, la Activity se conectaria a mi localhost y compararia los datos, si es diferente se descargaria la nueva. Y para concluir mostraria la guardada o la descargada. Lo veo dificil pero algun dia lo conseguire, jejejej :D

superroko2
15/10/12, 16:51:54
He conseguido bastante de lo que esperaba, me estaba volviendo loco con el codigo del tutorial y he encontrado otro muy bueno.

http://www.androidhive.info/2012/01/android-json-parsing-tutorial/

Al final lo que he hecho a sido crear una tabla en phpmyadmin, luego he usado BlueFish para crear unos scripts, y ya en el codigo Android simplemente le he dicho que lea esa tabla desde mi localhost y la imprima en un view. El resultado a sido este: (no habia quien metiera esto en portrait, :D)

http://imageshack.us/a/img16/83/screenshot2012101119373v.png (http://imageshack.us/photo/my-images/16/screenshot2012101119373v.png/)

Pero me surgen dudas y algun problemilla:

Solo he conseguido que lea los datos de la tabla con el movil y el pc conectados en la misma red de mi casa, a traves del 3g a sido imposible. He leido algo sobre el tema pero no me queda muy claro. Como puedo hacer visible mi localhost a todo el mundo???

Por cierto deberia tomar alguna precaucion al hacer visible mi localhost o algo???

Creo que le voy pillando la idea a esto, pero hacerlo es otra cosa ;-). Lo suyo seria tener siempre en el movil una tabla SQLite guardada, cada vez que fuera necesario hechar mano de ella, la Activity se conectaria a mi localhost y compararia los datos, si es diferente se descargaria la nueva. Y para concluir mostraria la guardada o la descargada. Lo veo dificil pero algun dia lo conseguire, jejejej :D

Deberías de hacer exactamente lo que haces pero que tu phpmyadmin no estuviera alojado en tu pc (localhost), sino que lo estuviera en la red (dominio online). Si hace falta te puedo ayudar, lo que no voy a pagar yo el dominio jajajajaja ;)


Si hay una solución mejor que lo comente alguien, yo también estoy en proceso de hacer algo parecido con bases de datos.

rinxe
16/10/12, 15:04:05
Joer llevo un ralladon con esto del web service, solo me ha funcionado esa vez y llevo 3-4 dias peleandome con eclipse, linux, hosting, .... :ohjos:

La idea de como hacerlo la tengo pero el problema empezo cuando quise hacer visible mi localhost en internet. Al final creo que es el sitio que elegi para crearme un hosting, me daba muchos problemas con eclipse.

Y ahora he encontrado este sito web (http://www.nixiweb.com/) para crear un hosting (de momento no llevo idea de pagar porque estamos en fase experimental, jejejj), pone que es gratuito y tiene pinta de ser la leche pero como no entiendo mucho esta tarde he quedado con un amiguete informatico haber si el sabe de estos temas porque yo ando algo perdido.

superroko2
16/10/12, 19:18:00
La verdad es que no la conocía, pero tiene buena pinta sí.

En principio no debes pagar si no quieres, con cualquier hosting gratuito que te ofrezca lo que tu necesitas (que no es demasiado tampoco) ya basta. Además como ese hosting no es visible (no es un dominio al que la gente vaya a acceder) pues no hay problema con el nombre o lo que sea.

Luego si quieres ampliar la BD o si necesitas más espacio, pues quizás si necesites un hosting de pago, pero vamos nunca te subirá demasiado el coste a no ser que llegues a necesitar un alojamiento muy bestia, lo que significaría un gran éxito de tu aplicación y entonces seguro que no te importaría invertir un poquito. Jejejejeje.


Para esos temas lo que quieras, soy medio ingeniero informático (estudiando xd) y domino todo esto, al menos mucho mejor que el tema de Android en concreto.

Ya irás comentando, por aquí andamos.

Un saludo ;)

rinxe
17/10/12, 00:10:56
Gracias por la info, la conclusion que he sacado es esa, jejejj. De momento voy a funcionar con el hosting y dominio de nixiweb unos dias haber si le cojo la marcha a esto y enseguida me pillare un DynDns (me a dicho el amigo que me cederia uno, que tiene unos cuantos para los clientes).

rinxe
17/10/12, 11:07:31
Al final ya he conseguido lo que queria, mis ralladas de pc he tenido pero bueno, al final he aprendido como va este tema y tiene muchas posibilidades para nuestras apps

Markillo
17/10/12, 11:52:43
Podrias explicar como se hace?

S2 IC V7 de Criskelo Servan Team

rinxe
17/10/12, 18:22:21
Pues sabria explicartelo a mi manera, porque el tema es bastante extenso y he aprendido lo justo.

Lo primero que necesitas es un hosting, donde alojar tus bases de datos (phpmyadmin), archivos y aparte un dominio o subdomino para referenciarlos.

Una vez tienes eso creas una tabla en phpmyadmin con los datos que quieras y demas.

Despues es cuestion de hacer 3-4 scripts en php que lean esa tabla y la conviertan en JSON. Este apartado es muy extenso y a parte de leer la tabla podriamos hacer muchas mas cosas.

Y ya el codigo Android es igual, muy extenso y se podria hacer de todo. Pero basicamente para leer la tabla tienes que crear una clase JSONParser que se encargara de convertir el JSON en Strings. Y otra clase Activity donde le indicaremos que pinte los datos recogidos en las views.

Mas o menos ese es el proceso pero ya te digo que se necesita bastante tiempo para asimilar todo. Igual me animo cuando tenga tiempo y hago un post en un blog que cree a modo de archivo personal.