java.lang.IllegalArgumentException: Service Intent must be explicit: Intent
이러한 오류가 날 때는 인텐트의 오류임.
안드로이드 5.0 롤리팝 버전부터
인텐트 선언 시 명시적으로 선언하지 않으면 안되게끔 됐음.
간단하게 버튼 클릭했을 때의 예를 보면
bt_svcStart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//** 정상 작동
Intent service = new Intent(getApplicationContext(), BoundService.class);
service.setPackage("com.example.worrick.testheadsup");
startService(service);
//**
//** 에러 발생
// startService(new Intent("com.example.worrick.testheadsup"));
// **
}
});
위의 정상 작동 코멘트를 달아 놓은 것 처럼 인텐트를 선언해야 함.
에러 발생 코멘트처럼 할 경우에는 말 그대로 에러 발생...
인텐트 생성도 안될 뿐 더러 어플리케이션에서 에러 뿜어댐.
5시간의 삽질로 알아낸 결과...
감사합니다!!
답글삭제감사합니다 큰 도움이 되었어요!
답글삭제