반응형
안드로이드에서 service 를 이용하려고 코드를 짰는데, 제목과 같은 에러가 나왔다.
짐작으로 삽질...하다가 혹시나 해서 에러 메시지로 검색해보니, 답이 나오더라.
언제나처럼 StackOverFlow 다.
상태 : 안드로이드 서비스 실행을 위해, 아래와 같은 방식으로 실행.
startService( new Intent("package.MyService") );
오류 : java.lang.IllegalArgumentException: Service Intent must be explicit
해결 : intent 부르는 방식을 변경.
startService( new Intent("package.MyService") );
->
startService( new Intent( getApplicationContext(), MyService.class ) );
stackoverflow 의 이야기를 보면, Intent 를 사용할 때 (패키지)이름만 쓰는 경우는 없다고 한다.
나는 처음에는 service 는 intent 를 반드시 저런 양식으로 불러야 하는 줄 알았는데, 뭐, 어쨌던 위의 방법으로 되니까 넘어가자. 좀더 알아봐야 하는 게 맞지만
끝.
반응형
'프로그램 > 안드로이드' 카테고리의 다른 글
AsyncTask 는 중복해서 못 쓰나? (0) | 2017.03.20 |
---|---|
AlertDialog 에서 token null is not for an application 에러. (0) | 2017.02.14 |
안드로이드 스튜디오에서 외부 라이브러리가 추가되지 않을때 (0) | 2016.11.23 |
안드로이드 스튜디오에서 VT-x 사용 실패 혹은 HAX, HAXM 사용 실패 (0) | 2016.11.22 |
자바는 나누기 연산에서, "버림" 을 적용한다. (2) | 2015.03.21 |