【发布时间】:2018-11-13 06:56:28
【问题描述】:
如何将数据从广播接收器发送到片段?在这里,我想将电话号码(OriginatingAddress)发送到另一个片段。
public void onReceive(Context context, Intent intent) {
Bundle intentExtras = intent.getExtras();
if (intentExtras != null) {
Object[] sms = (Object[]) intentExtras.get(SMS_BUNDLE);
String smsMessageStr = "";
for (int i = 0; i < sms.length; ++i) {
SmsMessage smsMessage = SmsMessage.createFromPdu((byte[]) sms[i]);
String smsBody = smsMessage.getMessageBody().toString();
String phonenumber = smsMessage.getOriginatingAddress();
smsMessageStr += "SMS From: " + phonenumber + "\n";
smsMessageStr += smsBody + "\n";
}
}
}
【问题讨论】:
-
Intent intent1 = new Intent(context, MainActivity.class);<br/> intent1.putExtra("phonenumber", address); intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent1); context.sendBroadcast(intent1); -
以上内容使我可以将数据从接收器发送到活动,但我坚持将其发送到片段
标签: android android-fragments broadcastreceiver android-broadcast android-broadcastreceiver