본문 바로가기
IT 개발

[Android] AndroidManifest의 내용 java코드에서 가져오기 feat. meta-data

by 로보찌빠냥 2020. 5. 28.

안드로이드 프로젝트를 유지보수 하다보면 AndroidManifest 값들을 가져와서 소스코드에서 분기 시켜야 할 때가 있는데요

지금은 gradle을 이용해 buildTypes 등을 이용해 쓸 수 있지만 과거 오래된 프로젝트나 크로스플랫폼 프레임워크 같은 프로젝트에서는 gradle 사용을 못해 초기 설정값들이 여기저기 분산되어 있을 수있습니다 특히 여러사람이 개발하거나 여러사람 손을 거친 프로젝트라면이런 현상이 더욱 심해질 수 있습니다 

 

간단한 설정값 들은 AndroidManifest 파일에 정의해두고 소스코드에서 사용하는 방법을 포스팅해 봅니다.

 

AndroidManifest 에 application 테그안에

<application icon="@drawable/icon" label="@string/app_name">
    <meta-data name="key" value="value" />
    ...

위와 같이 추가를 해줍니다.

 

Activity 소스에서는 아래와 같이 사용하면 됩니다.

ApplicationInfo appInfo = getPackageManager().getApplicationInfo(this.getPackageName(), PackageManager.GET_META_DATA); 
Bundle bundle = appInfo.metaData; 
String valueStr = bundle.getString("key");

 

반응형

댓글