Home Menu

Menu



Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android


 
Herramientas
  #1  
Viejo 18/08/15, 10:49:17
Avatar de _DeV_
_DeV_ _DeV_ no está en línea
Usuario poco activo
Mensajes: 45
 
Fecha de registro: nov 2011
Mensajes: 45
Tu operador: Movistar
Mencionado: 1 comentarios
Tagged: 0 hilos
Cómo hago para que los datos obtenidos de un WS se carguen más rapidos?

Buenas, os cuento así por encima la estructura de mi app:

Entras a una actividad y en el onCreate (después de cargar la vista de la actividad correspondiente) llamo a una clase privada que extiende de AsyncTask para que consuma a un servicio web en PHP que tengo un host con el cual se rellena la información que muestro en esa actividad (en este caso una tabla de clasificación de fútbol).

Durante 1, 2 o 3 segundo se ve la información predeterminada que coloco en el atributo android:text de cada TextView. Justo después se cambia y carga toda la clasificación (nombres de equipos, partidos jugados, ganados, etc..., son solo 6 TextView por cada equipo).

Mi pregunta es si es posible hacer que estos 3 segundos sean los mínimos posibles o bien, que "truquito" usais los programadores para evitar que esta espera sea fea de cara al usuario (esta es mi primera app seria que estoy desarrollando y me gustaría hacerla lo más liviana posible).

Habia pensando en un Toast que durante esos segundos de espera dijese "Cargando tabla..." otra cosa no se me ocurre.

A ver que me recomendais.

Un saludo y gracias!
Responder Con Cita


  #2  
Viejo 18/08/15, 11:19:55
Avatar de kriogeN
kriogeN kriogeN no está en línea
Colaborador/a
Mensajes: 4,637
Compra y venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Versión de ROM: CM13 - CM 11
Tu operador: Vodafone
Mencionado: 60 comentarios
Tagged: 3 hilos
Antes usaba una ProgressBar circular indefinida como primer elemento de la lista hasta que cargaba la información. Ahora uso el SwipeRefreshLayout y nada más empezar le pongo setRefreshing(true), así además de tener el Pull To Refresh me simula el spinner de carga en la primera actualización(y sucesivas)
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 18/08/15, 13:29:30
Avatar de _DeV_
_DeV_ _DeV_ no está en línea
Usuario poco activo
Mensajes: 45
 
Fecha de registro: nov 2011
Mensajes: 45
Tu operador: Movistar
Mencionado: 1 comentarios
Tagged: 0 hilos
Cita:
Originalmente Escrito por kriogeN Ver Mensaje
Antes usaba una ProgressBar circular indefinida como primer elemento de la lista hasta que cargaba la información. Ahora uso el SwipeRefreshLayout y nada más empezar le pongo setRefreshing(true), así además de tener el Pull To Refresh me simula el spinner de carga en la primera actualización(y sucesivas)
Podrías ponerme un código de ejemplo con un simple hello world? Por más que trato de configurarlo no me sale la barrita de arriba por ningún lado.
Responder Con Cita
  #4  
Viejo 18/08/15, 16:25:32
Avatar de mocelet
mocelet mocelet no está en línea
Desarrollador
Mensajes: 2,203
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -
Mencionado: 17 comentarios
Tagged: 2 hilos
Ahí te va un ejemplo: http://antonioleiva.com/swiperefreshlayout

Los comentarios son muy interesantes, eso sí, en inglés ^^
Responder Con Cita
Gracias de parte de:
  #5  
Viejo 19/08/15, 14:04:05
Avatar de _DeV_
_DeV_ _DeV_ no está en línea
Usuario poco activo
Mensajes: 45
 
Fecha de registro: nov 2011
Mensajes: 45
Tu operador: Movistar
Mencionado: 1 comentarios
Tagged: 0 hilos
Cita:
Originalmente Escrito por mocelet Ver Mensaje
Ahí te va un ejemplo: http://antonioleiva.com/swiperefreshlayout

Los comentarios son muy interesantes, eso sí, en inglés ^^
Llevo intentándolo una hora y nada.

Consigo que me salga el circulo con los colores y cuando hago scroll hacia abajo, pero no consigo configurar ni que me salga la barra ni que me salga directamente el circulo al iniciar la actividad. Seguiré probando.

EDIT: Que te salga el circulito del tiron basta con un:
swipeView.post(new Runnable() {
@Override
public void run() {
swipeView.setRefreshing(true);
}
});Aún así, sigo sin poder conseguir la barra. Me da a mi que va ser por el sdk

Última edición por _DeV_ Día 19/08/15 a las 14:18:54
Responder Con Cita
  #6  
Viejo 19/08/15, 21:10:30
Avatar de kriogeN
kriogeN kriogeN no está en línea
Colaborador/a
Mensajes: 4,637
Compra y venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Versión de ROM: CM13 - CM 11
Tu operador: Vodafone
Mencionado: 60 comentarios
Tagged: 3 hilos
Cita:
Originalmente Escrito por _DeV_ Ver Mensaje
Llevo intentándolo una hora y nada.

Consigo que me salga el circulo con los colores y cuando hago scroll hacia abajo, pero no consigo configurar ni que me salga la barra ni que me salga directamente el circulo al iniciar la actividad. Seguiré probando.

EDIT: Que te salga el circulito del tiron basta con un:
swipeView.post(new Runnable() {
@Override
public void run() {
swipeView.setRefreshing(true);
}
});Aún así, sigo sin poder conseguir la barra. Me da a mi que va ser por el sdk
Pero que te salga el círculo realmente es lo que querías.

A partir de la versión 21 de la librería de soporte el SwipeRefreshLayout sólo funciona con el círculo en lugar de con la barra, así que si quieres que te salga la barra tendrás que usar la 20. No se si te merece la pena la verdad.
Responder Con Cita
Gracias de parte de:
  #7  
Viejo 07/09/15, 15:32:27
Avatar de c2alvaro
c2alvaro c2alvaro no está en línea
Miembro del foro
Mensajes: 67
 
Fecha de registro: may 2015
Localización: Venezuela
Mensajes: 67
Modelo de smartphone: Galaxy S4 mini
Versión de ROM: ROM de fabrica
Tu operador: Movistar
Mencionado: 2 comentarios
Tagged: 0 hilos
Creo yo que la velocidad de respuesta de un WS depende de muchos factores, estoy haciendo una APP para el banco donde trabajo el cual consiste de un WS que consulto desde mi app para mostrar los productos de un cliente (cuentas financieras) ahora bien, mi experiencia me ha dicho que la velocidad puede depender de: código del WS, RAM o procesador del móvil, y claro está la conexión de datos que se usa, por ejemplo cuando pruebo la app con conexión local (wifi corporativo para acceder al WS) la velocidad es mucho mejor que cuando la pruebo con mi plan de datos de mi operadora móvil. En todo caso hay que esperar que los más expertos te den sus concejos para optimizar tu app, saludos.
Responder Con Cita
  #8  
Viejo 07/09/15, 22:52:26
Avatar de androizado
androizado androizado no está en línea
Miembro del foro
Mensajes: 191
 
Fecha de registro: dic 2012
Mensajes: 191
Modelo de smartphone: Nexus 5
Versión de ROM: 5.0.1 Lollipop
Tu operador: Vodafone
Mencionado: 0 comentarios
Tagged: 0 hilos
Quiero aportar diciendo, hay que tener una buena api tanto del lado del cliente como del lado del servidor, todo en conjunto contribuye a que la respuesta sea más rápida o menos rápida, el conjunto podemos decir que es, optimización de código y consultas a base de datos, yo suelo devolver los datos justos y necesarios, las cualidades del servidor también influyen como la ram, la capacidad de atender peticiones, y cómo no el móvil también puede influir a una mala o buena recepción de los datos, conexión de internet (Wifi o Datos), etc...
Responder Con Cita
Respuesta

Estás aquí
Regresar   HTCMania > Todo sobre Android > Programación y Desarrollo para Android

Herramientas

Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 18:05:22 (GMT +2)

Cookies
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007