mortex3000
چهارشنبه 04 اسفند 1395, 11:41 صبح
سلام من یک broad cast receiver نوشتم که هنگامی که پیامک به گوشی داده میشه اطلاعات رو میگیره و در دیتابیس ذخیره می کنه
اما من میخوام id مربوط به message رو بگیرم اما ظاهرا با روش من نمیشه لطفا راهنمایی کنید:
public void onReceive(Context context, Intent intent) {
localstoragehandler = new StorageManipulater(context);
// Get the data (SMS data) bound to intent
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
String str = "";
if (bundle != null) {
// Retrieve the SMS Messages received
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
// For every SMS message received
for (int i=0; i < msgs.length; i++) {
// Convert Object array
msgs = SmsMessage.[I]createFromPdu((byte[]) pdus);
[I]// Sender's phone number
str += "SMS from " + msgs.getOriginatingAddress() + " : ";
[I]// Fetch the text message
str += msgs.getMessageBody().toString();
[I]// Newline 🙂
str += "\n";
String mydate = convertTwoShamsi(millisToDate(msgs.getTimestampMil lis()));
localstoragehandler.insertSMS(msgs.getOriginatingA ddress(), msgs[i].getMessageBody(),String.[I]valueOf(msgs[i].getProtocolIdentifier()), "mmm",0,msgs[i].getIndexOnIcc());
}
[I]// Display the entire SMS Message
Log.d(TAG, str);
}
}
اما من میخوام id مربوط به message رو بگیرم اما ظاهرا با روش من نمیشه لطفا راهنمایی کنید:
public void onReceive(Context context, Intent intent) {
localstoragehandler = new StorageManipulater(context);
// Get the data (SMS data) bound to intent
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
String str = "";
if (bundle != null) {
// Retrieve the SMS Messages received
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
// For every SMS message received
for (int i=0; i < msgs.length; i++) {
// Convert Object array
msgs = SmsMessage.[I]createFromPdu((byte[]) pdus);
[I]// Sender's phone number
str += "SMS from " + msgs.getOriginatingAddress() + " : ";
[I]// Fetch the text message
str += msgs.getMessageBody().toString();
[I]// Newline 🙂
str += "\n";
String mydate = convertTwoShamsi(millisToDate(msgs.getTimestampMil lis()));
localstoragehandler.insertSMS(msgs.getOriginatingA ddress(), msgs[i].getMessageBody(),String.[I]valueOf(msgs[i].getProtocolIdentifier()), "mmm",0,msgs[i].getIndexOnIcc());
}
[I]// Display the entire SMS Message
Log.d(TAG, str);
}
}