Toast 메시지, dialog 등 context가 필요한 기능들이 있다.
이때 어디서든 context를 가져와 쓸 수 있고, 앱 실행 시 실행시켜줘야 되는 기능들이 있다면 MyApplication에 넣어 실행과 동시에 초기화 시켜줄 수도 있다.
MyApplication Class는 Application 클래스를 상속받는다.
class MyApplication : Application() {
companion object {
lateinit var prefs: PreferenceUtil
private lateinit var myApplication: MyApplication
fun getInstance() : MyApplication = myApplication
}
override fun onCreate() {
prefs = PreferenceUtil(applicationContext)
super.onCreate()
myApplication = this
NaverMapSdk.getInstance(this).client =
NaverMapSdk.NaverCloudPlatformClient(BuildConfig.Client_ID)
}
}
Preference를 초기화해 객체를 갖다 쓸 수도 있으며,
NaverMap 과 같이 Key 값을 초기화해주어야 할 때, MyApplication에 넣어주면 좋다.
마지막으로 Manifest에 다음과 같이 설정해준다.
Manifest
<application
android:name=".MyApplication"
...
</application>
'안드로이드 > 안드로이드' 카테고리의 다른 글
[안드로이드] Alarm Manager (0) | 2024.01.17 |
---|---|
[안드로이드] SharedPreferences (0) | 2023.11.29 |
[안드로이드] 백그라운드에서 위치 데이터 지속적으로 얻기 (1) | 2023.11.26 |
[안드로이드] Api Key 저장 방법 with local.properties (1) | 2023.11.25 |
[안드로이드] 푸쉬 알림 (기초) (1) | 2023.11.22 |