마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

브로드캐스트 수신시 서비스실행 문제

–1 추천

브로드캐스트가 수신되면 서비스가 실행되게 하려고 합니다.

그냥 onReceive 안에 Intent intent ... 로 해서 서비스를 실행하니 에러가 발생하더군요.

어떤식으로 코드를 구성해야 하나요?

 

BroadcastReceiver sn_english= new BroadcastReceiver() {
        public void onReceive(Context context, Intent intent) {

            if(intent.getAction().equals("br1"))
            {

                //br1 수신시 이벤트

            }
            else if(intent.getAction().equals("br2"))
            {

                //브로드캐스트 안에서 서비스 실행부분..
                intent = new Intent(this, English_Service.class);
                startService(intent);

               //br2 수신시 이벤트

            }



        }
    };

 

KRJ (820 포인트) 님이 2015년 2월 6일 질문
KRJ님이 2015년 2월 7일 수정
무슨 오류가 나는데요?
질문글 수정했습니다. 확인 부탁드려요..

1개의 답변

+3 추천
 
채택된 답변

intent = new Intent(this, English_Service.class);

=>

intent = new Intent(context, English_Service.class);

context로 바꿔서 해보셔요

nicehee (73,100 포인트) 님이 2015년 2월 7일 답변
KRJ님이 2015년 2월 7일 채택됨
딴지는 아니고요, 간간히 답 잘 달아주시는 것 같은데,
앞으론 저 사람들 한텐 그런 것보단
해당 함수 인자나 원리를 간략히 설명해주시는게 낫지 않겠습니까?
(각자 철학이 있겠으나 님 소모하는 시간 의미 있게 쓰시면 합니다.
저런 저질 코드 따위 고쳐주고 계시지 말란 이야깁니다.)
뭐 각자 스타일이 다르니까 뭐라하지마시길..
난 핵심만 찍어서 알려주는 스타일이라서리...
설명이 더 필요하다고 생각되시면 님께서 달아주셔요.

그리고 위 코드를 질문자께서 이해를 못한다면 댓글로 설명을 요청하겠지요
아니면 구글링해서 찾아보던가 책을 보던지하는건 질문자 맘이고

그럼 초보자의 질문은 모두 저질이라고 생각하시나요?
금방 태어난 아기가 말못한다고 대화가 안통하는 사람이라고 단정짓는
우를 범하면 안되것죠?

그리고 이런글 올릴려면 떳떳하게 아이디 밝히시고 하셔요
가장 간단한 답을 원하는 사람에게 주저리주저리 설명하느라 뭐가 답인지도 모르게 된다면, 정말로 큰 도움이 되겠군요...
...