반응형
●매니페스트(AndroidManaifest.xml)
- 매니페스트는 어플리케이션의 각종 정보를 저장하고 있는 신분증같은 역할을 한다.
●메티페스트의 구성
① <manifest>태그
- 어플리케이션에 대한 전반적인 정보들을 포함한다. xmlns:android는 항상 다음과 같은 네임스페이스를 지정해야한다. packpge는 어플리케이션의 패키지 이름을 지정한다. android:versionCode는 어플리케이션의 버전코드이다. android:versionName는 어플리케이션 버전이다.
ex)
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.test"
android:versionCode="1"
android:versionName="1.0" >
② <application>태그
- 어플리케이션의 이름, 아이콘등을 정의한다. android:icon은 어플리케이션의 아이콘을 지정한다. android:label은 어플리케이션의 이름을 지정한다. <application>태그는 아휘요소로 어플리케이션의 구성요소(액티비티, 서비스, 콘텐트 프로바이더,브로드케스트 리시버)들의 태그를 정의한다.
ex)
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<uses-library android:name="android.test.runner" />
<activity android:name="NewActivity"></activity>
</application>
③ <activity> 태그
- 엑티비티를 정의한다. android:name은 액티비티의 클래스 이름이다. android:label은 화면에 표시될 액티비티의 이름이다.
④ <service> 태그
- 서비스를 정의한다. android:name은 서비스 클래스의 이름이다. android:process는 서비스가 실행될 프로세스를 지정한다.
⑤ <provider> 태그
- 어플리케이션 내의 데이터를 다른 어플리케이션에서 공유할 수 있게 해주는 콘텐트 프로바이더를 등록한다. android:name은 콘텐트 프로바이더 클래스의 이름이다. android:authorities는 콘텐트 프로바이더의 authority를 정의한다. 이 항목은 필수로 기재돼야 한다.
⑥ <receiver> 태그
- 브로드캐스트 리시버를 정의한다.
⑦ <uses-permission> 태그
- 어플리케이션에서 사용할 권한을 지정한다.
⑧ <uses-library> 태그
- 구글 맵 등 사용하려는 외부 라이브러리를 지정한다.
⑨ <uses-sdk> 태그
- 어플리케이션에서 최소로 필요로 하는 sdk버전이다. 버전명이 아닌 API Level로 지정해야 한다.
●메니페스트 에디터 이용
- SDK버전 설정
manifest탭의 Use Sdk항목에서 설정한다. 일반적으로 Min SDK version만 설정한다. 버전은 API Level로 표시한다.
- 어플리케이션 구성요소 추가
액티비티, 서비스, 브로드캐스트 리시버, 콘텐트 프로바이더를 추가할 수 있다.
액티비티 추가하는 예시( http://hyunssssss.tistory.com/44 )
- 권한 추가(uses-permission)
안드로이드 어플리케이션에서 주소록 데이터 접근, SMS데이터 접근, 인터넷 사용, 하드웨어 기능 사용 등을 하려면 적절한 권한을 명시해 주어야 한다.
Permission탭에서 Add를 누른후 나타난 창에서 Uses Permission을 선택한 후 ok버튼을 누른다.
아래 그림의 오른쪽 항목에서 사용할 권한을 추가 한다.
- 외부 라이브러리 사용(uses-library)
구글맵 라이브러리 같은 것을 사용하려면 이를 매니페스트에 기재해야 한다.
Appication탭 하단 Application Nodes에서 Add 클릭후 나타한 대화상자에서 Uses Library를 선택후 ok버튼 누른다.
name에서 추가할 라이브러리를 선택한다.
반응형
'프로그래밍 > 안드로이드' 카테고리의 다른 글
안드로이드 액티비티의 화면 구성하기-레이아웃(layout) (0) | 2012.03.01 |
---|---|
안드로이드 인텐트(intent) 개념 정리 (0) | 2012.02.26 |
안드로이드 액티비티(Activity) (0) | 2012.02.23 |
안드로이드 리소스(Resources) (0) | 2012.02.23 |
안드로이드 어플리케이션 구성 요소(개발 환경 관점) (0) | 2012.02.22 |
댓글