Android SMS Pending Intent获取发送的SMS或MMS的_id
目前,我能够发送短信和彩信没有问题。我的问题是,当我有一个用于发送确认的Android SMS Pending Intent获取发送的SMS或MMS的_id,android,sms,mms,Android,Sms,Mms,目前,我能够发送短信和彩信没有问题。我的问题是,当我有一个用于发送确认的pendingent时,如何获取发送的消息的\u id?有没有办法参考这条短信?我正在做以下工作: Intent sentIntent = new Intent(id_value); PendingIntent sentPendingIntent = PendingIntent.getBroadcast(context.getApplicationContext(), 0, sentIntent, Pendi
pendingent
时,如何获取发送的消息的\u id
?有没有办法参考这条短信?我正在做以下工作:
Intent sentIntent = new Intent(id_value);
PendingIntent sentPendingIntent = PendingIntent.getBroadcast(context.getApplicationContext(), 0, sentIntent, PendingIntent.FLAG_UPDATE_CURRENT);
context.registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String result = "";
switch (getResultCode()) {
case Activity.RESULT_OK:
break;
default:
break;
}
}
}, new IntentFilter(id_value));
在上面的示例中,
id\u value
是我生成的一个随机值,用于标识发送了哪些SMS或MMS。但是我想知道,短信和彩信数据库中的信息的\u id
是什么?在附加功能中有一个uri
键。你可以这样得到它:
context.registerReceiver(new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
switch (getResultCode()) {
case Activity.RESULT_OK: {
Bundle bundle = intent.getExtras();
String uri = bundle.getString("uri");
}
break;
default: {
}
break;
}
}
}, new IntentFilter(id));
本例中的uri
类似于content://sms/7384
。在这种情况下,7834
是\u id
字段。使用内容解析器,我们可以获得该短信或彩信的详细信息
这是我发送待决意向的一部分
请记住,如果您发送一条多部分SMS,则只有一个回拨将具有uri
。其余字段将为空。“这是我发送待定意图的一部分。”-我不清楚这句话。您是说您正在将URI附加到用于挂起内容的意图
?否。这是当您调用sendTextMessage
函数时发送的挂起意图的广播接收器。好的,那么这不会在任何地方都起作用。你在测试哪个安卓版本?5.1.1。你确定它不会在任何地方都起作用吗?如果需要澄清,我可以显示更多的代码。这可能还没有必要。如果您没有在问题中发布的代码中的任何地方调用sentinent.putExtra(“uri”,…)
,那么,是的,这不会在任何地方都有效。例如,在库存KitKat(4.4)中的Intent
上没有额外的URI。我只是想确定它是否是安卓系统的新功能。