SMS 용 응용 프로그램을 개발 중이며 MessageURI를 SMS 용 데이터로 전달하는 경우 "보낸 사람"의도를 수신 할 수 없습니다. 예외가 발생하고 SMS는 대기 상태에 있습니다. OnReceive
가 호출되지 않았습니다 !!!SMS 수신자가 의도를 수신하지 못했습니다.
public class Sms_SendActivity extends Activity {
PendingIntent sentPI;
String Sent = "SENT_SMS";
BroadcastReceiver br;
Button btnSend;
Context mcontext;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Uri uri = Uri.parse("Content://sms/2");
mcontext = getApplicationContext();
sentPI = PendingIntent.getBroadcast(this,0,new Intent(Sent,uri),0);
btnSend = (Button)findViewById(R.id.send);
br = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.w("Check","Inside On Receiver");
switch (getResultCode()) {
case Activity.RESULT_OK:
Toast.makeText(mcontext,"Inside Sms sent", Toast.LENGTH_SHORT).show();
Log.w("Check"," URI "+intent.getData().toString());
break;
default:
Toast.makeText(mcontext,"failure", Toast.LENGTH_SHORT).show();
break;
}
unregisterReceiver(br);
}
};
btnSend.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage("1-212-555-1212", null, "Hi there", sentPI, null);
Log.w("Check","Sms Queued");
try {
registerReceiver(br, new IntentFilter(Sent,"content://sms"));
} catch (MalformedMimeTypeException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
}
}
나를 도와 줄 수 있습니까?
감사합니다.
나는 비슷한 것을하고있다 !!! http://stackoverflow.com/questions/14571564/android-pendingintent-extras-not-received-by-broadcastreceiver/14612215#14612215 – toobsco42