[Android] bindService 명시적으로 보내기
안드로이드 SDK 버전 21 (롤리팝) 부터 bindService를 암시적으로 보내게 되면 아래와 같은 오류가 뜨면서 앱 중지가 발생한다.
E/AndroidRuntime(30479): Process: com.lguplus.emotionguitestapp, PID: 30479
E/AndroidRuntime(30479): java.lang.RuntimeException: Unable to start activity
E/AndroidRuntime(30479): Caused by: java.lang.IllegalArgumentException: Service Intent must be explicit: Intent { act=com.lguplus.emotiongui.service }
E/AndroidRuntime(30479): at android.app.ContextImpl.validateServiceIntent(ContextImpl.java:2039)
E/AndroidRuntime(30479): at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:2147)
E/AndroidRuntime(30479): at android.app.ContextImpl.bindService(ContextImpl.java:2125)
E/AndroidRuntime(30479): at android.content.ContextWrapper.bindService(ContextWrapper.java:559)
내용인 즉 서비스를 명시 해라!!
예로 "com.kkomanjell.app" 에 service 를 intent로 날릴때
롤리팝 이전에는 아래처럼 날려도 문제가 되지 않았다.
Intent intent = new Intent().setAction("com.kkomanjell.app.service");
activity.bindService(intent, serviceConnection, Context.BIND_AUTO_CREATE);
Intent intent = new Intent().setAction("com.kkomanjell.app.service");
intent.setPackage("com.kkomanjell.app");
activity.bindService(intent, serviceConnection, Context.BIND_AUTO_CREATE);
'프로그래밍 > 안드로이드(Android)' 카테고리의 다른 글
[Android] Hex Opacity Values (Text Alpha 값 적용하기) (0) | 2015.08.27 |
---|---|
스크린 크기 값 구하기 (0) | 2013.12.12 |
[Android] ConcurrentModificationException 문제 해결 관련 정보 (0) | 2012.04.26 |
[Android] Button 에 text 와 image 넣기 (xml , source) (0) | 2011.08.08 |
[Android] 화면 전환시 Activity 재생성 막기 (유용하게 사용하기) (0) | 2011.08.04 |