라벨이 andro인 게시물 표시

Intent-Filter Priority Setting

intent-filter에 android:priority값을 부여해서 받는 순서를 설정 가능 해당 값에 따라 먼저 받아 처리하고 낮은 것은 못 받게 설정이 가능함 아래는 SMS 기준으로 설명 1. SMS보내기 A. SmsManager smsMgr = SmsManager.getDefault();smsMgr.sendTextMessage(destinationAddress, scAddress, message, sentIntent, deliveryIntent); 2. SMS받기 A. <intent-filter> <action android:name="android.provider.Telephony.SMS_RECEIVED" /> </intent-filter> B. Receiver를 등록하고 broadcastReceiver로 받아서 처리하면 됨 3. SMS받을 시 기본 SMS에서의 NOTI를 무시하고 개발 어플에서만 알림을 할수 있는지 확인 A. 찾아보니 GO SMS(SMS어플)에서 아래와 같이 처리 한 것 같음 B. 2번과 같이 구현하고 intent-filter에 android:priority값을 높게 부여해서 기존 SMS가 받기 전에 미리 받아서 처리 하는 방법임 C. broadcastReceiver에서 onReceive()에서 받아 처리 될 때 abortBroadcast()를 넣어주면 priority가 낮은 녀석들한테 인텐트를 보내는 것을 멈춤. ※ 참고사항 1. 필요한 권한 <uses-permission android:name="android.permission.SEND_SMS"></uses-permission> <uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission> ...