개발/Android
[안드로이드/java] 문자 수신 감지(BroadcastReceiver)
뚀니 Ddoeni
2019. 1. 2. 14:52
728x90
1. manifest permission 추가
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
2. Receiver 생성
public class SmsReceiver extends BroadcastReceiver {
@Override
public void onReceive(final Context context, Intent intent) {
Bundle bundle = intent.getExtras();
SmsMessage[] message = null;
String str = "";
String phoneNumber = "";
if (bundle != null) {
Object[] pdus = (Object[]) bundle.get("pdus");
message = new SmsMessage[pdus.length];
for (int i=0; i<msgs.length; i++){
msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
str += “발신자 : ” + msgs[i].getOriginatingAddress();
str += “내용 : ” + msgs[i].getMessageBody().toString();
phoneNumber = msgs[i].getOriginatingAddress();
}
}
}
}
3. manifest 추가
<receiver android:name="kr.your.package.SmsReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
300x250