¿Qué desempeño deben tener en cuenta los desarrolladores móviles al desarrollar aplicaciones móviles?

Gracias por el A2A. He pasado más de 7 años creando aplicaciones para iOS y Android, y estas son las principales cosas que sé que ralentizan las aplicaciones o hacen que el usuario perciba un retraso.

Para iOS:

  • Asegúrese de no crear ciclos de retención (A -> B, B -> A) ya que esto lleva a pérdidas de memoria. La regla general es que un niño nunca debe retener al padre. Si su aplicación está usando demasiada memoria, el sistema operativo podría decidir simplemente matarla. Si necesita que el niño tenga una referencia al padre, use una referencia débil.
  • Mantenga las imágenes lo más pequeñas posible, por ejemplo, no cargue una imagen enorme en un UIImageView pequeño. Si permite que el usuario cargue contenido, cambie el tamaño de la imagen a muchos tamaños diferentes y elija el más pequeño que se vea bien en un UIImageView dado
  • Siga bloqueando las llamadas fuera del hilo principal; esto hará que la aplicación se vea lenta si no lo hace (use un hilo de fondo, GCD o NSOperationQueue, por ejemplo). ¡Solo actualice la interfaz de usuario en el hilo principal!
  • Si está utilizando CoreLocation, no use ciegamente kCLLocationAccuracyBestForNavigation, use la configuración más baja que le brinde suficiente precisión para sus propósitos. Utilice también distanceFilter en consecuencia

Para Android:

  • No asigne muchos objetos rápidamente, esto ejerce presión sobre el GC y hace que el GC se active con más frecuencia, haciendo que la aplicación se detenga por completo mientras ejecuta ciclos de GC
  • Si necesita asignar objetos, asígnelos una vez y guárdelos, o use un conjunto de objetos
  • Asegúrese de .recycle () mapas de bits, los datos de mapa de bits no se guardan en el montón de Java, lo que a veces causa OutOfMemoryError incluso cuando el uso de la memoria del montón de Java no es tan alto. La biblioteca Fresco de Facebook ayuda con esto, colocando los datos de mapa de bits en una región especial de la memoria de Android en dispositivos pre-ART
  • Mantenga pequeños mapas de bits. Los mapas de bits grandes tardan más en decodificarse y ocupan más memoria
  • Siga bloqueando las llamadas del hilo principal, como iOS, esto hará que la aplicación se vea lenta si no lo hace (solo tiene 16 ms para procesar cada fotograma si desea una experiencia de usuario fluida, use AsyncTask, por ejemplo). ¡Solo actualice la interfaz de usuario en el hilo principal! En Android, una tarea de larga ejecución en el subproceso principal también puede causar un ANR (la aplicación no responde)

Mobiers ha establecido sus precios de servicio tan bajos como $ 18 por hora. Y si está buscando desarrolladores de Android con años de experiencia en el desarrollo de aplicaciones de Android robustas y flexibles, entonces Mobiers es el lugar adecuado para encontrarlas. Una vez que acepte su cotización de precios, todo lo que tiene que hacer es realizar el pago a través de una puerta de enlace 100% segura y dentro de 4-5 semanas obtendrá una aplicación funcional.

Como profesionales, han mantenido sus metodologías de trabajo simples y altamente orientadas a los resultados. Todo lo que necesita hacer es compartir los detalles de su proyecto y, desde el primer día, comenzarán a trabajar en su aplicación. Para saber más acerca de su cotización de precios, comentarios de clientes, clientes anteriores o proyectos, puede visitarlos en Desarrollo de aplicaciones móviles para Android y iPhone, de lo contrario puede llamarlos directamente al +1.313.444.0933 (24/7)

Mobiers Ltd

7524 Oakland Avenue, Detroit

Michigan 48211, Estados Unidos

Detroit, Michigan

Skype: Mobiers

Teléfono +1.313.444.0933

Correo electrónico [correo electrónico protegido]

Considere qué servicios de terceros también serían apropiados para su aplicación.

Muchas veces, los SDK pueden ser molestos de implementar, pero puede agregar herramientas útiles como análisis, seguimiento y redes publicitarias sin codificación en Enhance ™ de FGL.com

Solo toma alrededor de 2 minutos con Mejorar, en lugar de horas tratando de hacerlo manualmente.

Bueno, primero la aplicación debería funcionar y respetar todas las funcionalidades requeridas (como guardar el estado de la aplicación al perder el foco).

En segundo lugar, la aplicación debe asignar la memoria de manera eficiente, para no bloquearse en dispositivos de gama baja. Debe acomodar todos los escenarios (simple / complejo) en todos los dispositivos.

En tercer lugar, la aplicación debe estar diseñada para minimizar el tiempo que el usuario final pasa esperando, haciendo cosas en segundo plano (guardar / cargar / calcular).

Creo que el consumo de batería nunca está en la lista de optimizaciones para un desarrollador.