2009-01-02 13 views
6

Para ser claros, esto es para una aplicación normal de iPhone, y no un juego.Cómo reducir el tiempo de inicio de una aplicación típica de iPhone?

He leído en la web algunas veces que algunos desarrolladores mencionaron que estaban trabajando arduamente para mejorar/reducir el tiempo de inicio de sus aplicaciones, pero nunca con buena información de antecedentes sobre cómo hacerlo.

Entonces la pregunta es simple: ¿cómo se puede reducir el inicio de las aplicaciones de iPhone?

Respuesta

7

Igual que en cualquier otro problema de rendimiento: use Shark y/o Instruments para identificar los cuellos de botella en su código, y luego concéntrese en cómo puede acelerar las cosas allí. Cada herramienta le dará una idea de cuánto tiempo pasó en qué partes de su código, por lo que el esquema general sería ejecutar la herramienta mientras inicia la aplicación y luego examinar minuciosamente los datos para ver dónde ocurren los golpes de rendimiento.

En el momento de la puesta en marcha de la aplicación, los candidatos más probables para la mejora pospondrán la carga de datos hasta más tarde cuando realmente se necesite, diversamente descrita como carga "bajo demanda" o "floja". Básicamente, no cargue ningún dato al inicio de la aplicación a menos que realmente se necesite de inmediato cuando la aplicación cargue. En la práctica, muchas de las cosas que pueden ser necesarias en algún momento no tienen que estar disponibles inmediatamente cuando se inicia la aplicación. Por ejemplo, si tiene una base de datos de N registros pero solo uno es visible a la vez, no cargue todos los N en la memoria al momento de inicio de la aplicación. Cargue lo que sea el registro actual y luego cargue los otros cuando realmente los necesite.

0

James Thomson hizo una buena publicación de blog documentando su efforts to make PCalc launch faster.

De particular interés es su uso de la imagen con captura de pantalla de la última ejecución de la aplicación, para obtener el mismo truco que Default.png, al cargar el resto de la aplicación.

Cuestiones relacionadas