728x90
반응형
Service나 Activity Class에 속하도록 Broadcast Receiver를 작성할 때가 있다.
이럴 때, Broadcast 메시지가 발생하여도 Broadcast Receiver의 경로를 못찾아 에러가 발생할 수 있다.
해결책은 AndroidManifest.xml 파일에 Outer Class의 이름과 Inner Class 의 이름을 같이 써 주어야 한다.
예를 들어
public class Out extends Activity {
...
public class In extends BroadcastReceiver {
...
}
}
일 경우,
AndroidManifest.xml 파일을 아래처럼 하여야 한다.
<receiver android:name=".Out$In"
android:enabled="true">
<intent-filter>
<action android:name="android.bluetooth.device.action.ACL_CONNECTED"/>
...
</intent-filter>
</receiver>
".{Outer Class 이름}${Inner Class 이름}" 으로 설정을 하여야 정확히 위치를 찾아 BroadcastReceiver 수행이 가능하다. ^^
더불어, Inner Class의 경우 static Class로 정의하는 것이 문제없이 사용이 가능할 것이다.
728x90
반응형
'IT | Computer > 안드로이드' 카테고리의 다른 글
안드로이드 Bluetooth 연결 (0) | 2015.12.06 |
---|---|
Android Example Application 개발 (0) | 2015.12.06 |
Android 개발환경 설치 (0) | 2015.12.06 |
sendBroadcast() static으로 사용하는 법 (0) | 2012.11.22 |
Toast로 메시지 띄우기 (0) | 2012.09.20 |