Java 检测多个SMS接收器-Android
我开发了一个发送和接收消息的原型。我可以得到收件人的详细信息,如号码和信息。问题是我想检测多个接收器(多于1个)。现在,一种方法是检查消息是否是彩信,但问题是如果消息包含任何媒体,那么这也是彩信。如何解决此问题。对于我们来说,数字是10,但可能因国家而异。我想让它变得通用Java 检测多个SMS接收器-Android,java,android,smsmanager,Java,Android,Smsmanager,我开发了一个发送和接收消息的原型。我可以得到收件人的详细信息,如号码和信息。问题是我想检测多个接收器(多于1个)。现在,一种方法是检查消息是否是彩信,但问题是如果消息包含任何媒体,那么这也是彩信。如何解决此问题。对于我们来说,数字是10,但可能因国家而异。我想让它变得通用 public void onReceive(Context context, Intent intent) { //---get the SMS message passed in--- Bundl
public void onReceive(Context context, Intent intent) {
//---get the SMS message passed in---
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
String str = "";
if (bundle != null)
{
//---retrieve the SMS message received---
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
for (int i=0; i<msgs.length; i++){
msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
str += "SMS from " + msgs[i].getOriginatingAddress();
str += " :";
str += msgs[i].getMessageBody().toString();
str += "\n";
}
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, true);
//---display the new SMS message---
Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
// notification.defaults = Notification.DEFAULT_SOUND;
}
}
public void onReceive(上下文、意图){
//---获取传入的SMS消息---
Bundle=intent.getExtras();
SmsMessage[]msgs=null;
字符串str=“”;
if(bundle!=null)
{
//---检索收到的SMS消息---
Object[]pdus=(Object[])bundle.get(“pdus”);
msgs=新SMS消息[PDU.length];
对于(int i=0;这是一个广泛的问题-尽管我假设它是彩信,但这是短信有多个收件人的唯一方式。因此,请先检查它是否是彩信,然后检查收件人数量。如果大于1,则有多个收件人…如何检查收件人数>1@Rohit_Ramhumar通过你的原型?我们不知道是什么除非你发布代码,否则你会做什么。