2011-11-16 5 views
2

맞춤 기준 (콘텐츠 또는 발신자 등)을 기반으로 안드로이드 기기가 수신하는 특정 SMS 메시지를 어떻게 '소비'하는지 궁금합니다. 이를 위해 BroadcastReceiver의 하위 클래스를 등록했습니다. SMS 메시지를 수신하므로 괜찮습니다. 메시지는 '표준'SMS 저장소에도 전송됩니다.android에서 SMS를 자동으로 사용하고 있습니까?

메시지를 '소비'할 수 있는지 누가 알 수 있습니까? 즉 대기열에서 제거하고 '표준'SMS 처리기가 수신하지 않는지 확인하십시오.

+1

-1 아무런 연구 노력도 없었습니다. 1 분 안에 해결할 수있는 해결책을 찾았습니다. 작동하는지 확인하려면 최소한 아래의 설명을 참조하십시오. –

+0

아래에 어떤 댓글이 있습니까? :) 나는 당신의 코멘트를 볼뿐입니다 ... –

+0

http://stackoverflow.com/questions/5380192/sms-receive-with-no-notification/6103343#6103343 – Benjamin

답변

2

감사합니다.

질문에 대한 대답은 BroadcastReceiver에서 abortBroadcast()를 사용해야한다는 것이지만 가장 중요한 것은 메시지 대기열을 우선 순위 대기열로 전환해야한다는 것입니다. 그렇지 않으면 abortBroadcast()가 작동하지 않습니다. 다행히도 매니페스트에서이 작업을 수행 할 수 있습니다 :

<intent-filter android:priority="1"> 
    <action android:name="android.provider.Telephony.SMS_RECEIVED" /> 
</intent-filter> 

노트 의도 필터 요소의 android:priority="1" 속성.

+0

나에게 적합하지 않았다. –

관련 문제