Яка різниця між:
getApplicationContext()
getBasecontext()
getApplication()
getParent()
Чи можете ви розповісти на одному простому прикладі?
Яка різниця між:
getApplicationContext()
getBasecontext()
getApplication()
getParent()
Чи можете ви розповісти на одному простому прикладі?
Відповіді:
getApplicationContext()
Контекст програми пов'язаний із програмою і завжди буде однаковим протягом усього життєвого циклу.
getBasecontext()
не слід використовувати, просто використовуйте Context
замість нього, який пов'язаний з діяльністю і може бути знищений, коли діяльність знищена.
getApplicationContext () Контекст програми пов'язаний з Applicaition і завжди буде однаковим протягом усього життєвого циклу.
getBasecontext () не слід використовувати, просто використовуйте Context замість нього, який пов'язаний з діяльністю і може бути знищений, коли активність буде знищена.
getApplication () доступний лише для Діяльності та Служб. Хоча в поточних реалізаціях Android Activity і Service getApplication () та getApplicationContext () повертають той самий об’єкт, немає гарантії, що це завжди буде так (наприклад, у конкретній реалізації постачальника). Отже, якщо вам потрібен клас Application, який ви зареєстрували в Manifest, вам ніколи не слід викликати getApplicationContext () і передавати його своєму додатку, оскільки це може бути не екземпляр програми (що ви, очевидно, відчували з тестовою структурою).
getParent () повертає об'єкт діяльності, якщо поточне подання є дочірньою системою.