Please Enable JavaScript!
Gon[ Enable JavaScript ]

반응형

Android 의 모든 동작에 연결하는 Activity AndroidManifest.xml 에 등록을 해야 합니다. AndroidManifest.xml 에는 서비스, 브로드캐스트 수신기 및 앱의 전체 동작을 포함하여 Android 앱의 다양한 구성 요소를 정의합니다. 아래소스는 Intent 를 이용해서 버튼을 클릭했을 때 SecondActivity 로 이동하려는 의도가 담겨있습니다.

 

 


 

 

▼ 만약 SecondActivity 클래스가 AndroidManifest.xml 에 등록되어 있지 않다면 어떻게 될까요? 아래와 같은 에러 메시지가 나타날 겁니다.

 

android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.myapplication/com.example.myapplication.SecondActivity}; have you declared this activity in your AndroidManifest.xml?

 

 

▼ 해결 방법은 간단합니다. AndroidManifest.xml 로 이동해서 <activity> 요소에 SecondActivity 를 등록합니다.


 

 

AndroidManifest.xml 에 추가할 <activity> 구성 요소에 대한 설명은 다음과 같습니다.

 

l  android:name: Activity 이름을 입력하는데 앞에 “.” 점은 현재 패키지를 뜻합니다.

l  android:exported: 다른 앱의 구성 요소에서 참조가 가능한지 여부를 지정합니다. "false" 값은 활동이 동일한 앱의 구성 요소 또는 시스템에 의해서만 사용이 가능합니다. "true" 는 모든 앱에서 Activity 참조가 가능합니다.

 

따라서 현재 선언한 <activity> 요소는 현재 패키지에 SecondActivity 클래스의 인스턴스를 생성하고 다른 앱에서 Activity 를 참조하지 못하게 차단합니다. 


 

반응형
Posted by 녹두장군1
,