BroadCastReceiver 에서 수신받은 메세지를 Intent PutExtra 를 사용하여 값을 넘겨주면서
Activity 를 호출하고 싶습니다. 정확히는 Dialog 를 사용하여 SMS 를 보여주고 싶다는 건데요.
StartActivity 하는 부분에서 에러가 발생합니다. 에러 원인이 무엇인지 잘 모르겠네요. 해당 소스 스크린샷 첨부합니다. 도움 부탁드립니다.
애초에 이렇게 부르는게 맞는지도 잘 모르겠네요;;;
public class Receiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// 문자 Receiver
Bundle bundle = intent.getExtras();
if(null != bundle) {
Object[] pdus = (Object[]) bundle.get("pdus");
SmsMessage[] message = new SmsMessage[pdus.length];
String str = "";
for(int i = 0; i < pdus.length; i++){
message[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
str += message[i].getOriginatingAddress() + " 로 부터 받은 SMS 입니다.";
str += " :\n";
str += message[i].getMessageBody().toString();
// Dialog를 통해 수신된 문자를 보여준다.
Intent intentDialog = new Intent(context, Detail.class);
intentDialog.putExtra("address", message[i].getOriginatingAddress());
intentDialog.putExtra("body", message[i].getMessageBody().toString());
context.startActivity(intentDialog);
}
Toast.makeText(context, str, 10000).show();
}
}
}




