之前,有一片关于短信发送的文章,不过那篇文章所提到的方法,是不会把短信存放到发件箱中的。
介于有些时候需要存入,那么我把相关的代码写出来;只要把这几句加入方法中,再加上需要的权限,那么短信发出去后,发件箱就有所发短信内容了。
PS:之前写了一篇章关于发送短信存入发件箱的文章
文章链接:http://blog.csdn.net/etzmico/article/details/6874775
资源链接:http://download.csdn.net/detail/etzmico/3715837
代码如下:
ContentValues values = new ContentValues(); values.put("address", telNumStr); values.put("body", messageStr); getContentResolver().insert( Uri.parse("content://sms/sent"), values);
接下来是权限。
<uses-permission android:name="android.permission.WRITE_SMS" /> <uses-permission android:name="android.permission.READ_SMS" />两个权限,缺一不可。
下面把发短信的完整代码粘过来,以便对照。
SmsManager smsMgr = SmsManager.getDefault(); Intent i = new Intent("cn.etzmico.smssending"); PendingIntent dummyEvent = PendingIntent.getBroadcast( SMSSending.this, 0, i, 0); try { smsMgr.sendTextMessage(telNumStr, null, messageStr, dummyEvent, dummyEvent); ContentValues values = new ContentValues(); values.put("address", telNumStr); values.put("body", messageStr); getContentResolver().insert( Uri.parse("content://sms/sent"), values); } catch (Exception e) { Log.e("SmsSending", "SendException", e); }