МЕТОДИ ЖИТТЄВОГО ЦИКЛУ КЛАСУ APPLICATION

Методи життєвого циклу класу Applіcatіon досить рідко використовуються в простих додатках, що не дивно Ними не слід зловживати навіть у складному додатку Дуже легко набити перевизначення класу Applіcation такими даними, які будуть висіти в памяті, впливаючи на роботу декількох активностей Таким чином, ми на корені губимо існуючі в Android можливості управління ресурсами на покомпонентної основі Наприклад, якщо ви перенесете посилання на певні дані від обєкта Activity до обєкта Application, то та боротьба за ресурси, яка розгортається в системі в умовах дефіциту памяті, просто перенесеться в життєвий цикл програми, і управляти цими даними доведеться окремо від життєвого циклу активності

Тут ми реалізуємо методи життєвого циклу класу Application і покажемо, яке місце вони займають в життєвому циклі додатки Android Крім того, вам може бути корисна інформація, що виводиться при журналированием цих методів:

Раніше ми згадували про те, що в багатьох додатках не потрібно робити підкласи Applіcation Тому майстер нових проектів Android не створює підклас Applіcation, а також не ставить на нього посилання у файлі опису Подібно вихідному обєкту, який запускається одночасно з інтерактивним додатком, підклас Application, який ви створюєте, інстанцірует системою Android в рамках запуску програми Все відбувається так само, як і з інстанцірованія Activity Система використовує властивість android: name тега applіcation і створює правильний екземпляр класу Application Найпростіший спосіб зробити все це правильно – відкрити вкладку Application (Додаток) в редакторі описів (маніфестів) Перше поле на цій вкладці називається Name (Імя) (рис 117) Якщо натиснути кнопку Browse (Огляд) поруч із цим полем, то можна відобразити підкласи Applіcation, присутні у вашому додатку

Рис 117 Поле Name (Імя) на вкладці Application (Додаток) редактора описів, де можна ввести імя певної вами підкласу від Application

Як і у випадку з методами життєвого циклу класу Activity, найважливіше знати, коли викликаються методи життєвого циклу Application Зрозуміло, це можна дізнатися при налагодженні програми та шляхом установки контрольних точок у кожному методі Але частіше найбільш цікаву інформацію вдається добути, спостерігаючи за поведінкою додатків, що працюють підлягає, і фільтруючи реєстраційний журнал по тегам, використовуваним в підкласах Activity і Application Тоді відразу стає зрозуміло, коли викликаються методи життєвого циклу

Два зворотних виклику, які особливо цікаво відстежити в класі Applіcation, – це onLowMemory і onTerminate Вони з достатньою точністю повідомляють вам, коли з погляду системи починається дефіцит памяті і коли завершується вашу програму Друга ситуація зазвичай неочевидна, оскільки в більшості додатків Android не потрібно явного виходу з програми Це пояснюється особливостями управління памяттю в Android, у взаємодії з життєвими циклами компонентів Такий механізм легко видаляє з памяті не використовуваний код, якщо він був правильно реалізований – з урахуванням проблем, повязаних з життєвими циклами і з управлінням памяттю

Джерело: Android Програмування на Java для нового покоління мобільних пристроїв

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*