在站里查资料写了一个发短信的功能,但是在发送之后在自己的短信库里看不到。但对方确实可以收到,在1.6、2.1、2.3.3、的虚拟机上都试过,也在真机上测试过,但都没有写入短信库。下面是发短信的代码。求指点!!//发送短信方法
public void send()
{
if(!TextUtils.isEmpty(number)&&!TextUtils.isEmpty(text))
{
SmsManager sms = SmsManager.getDefault();
//若短信字数超过70个字符,将这条短信拆分成多条短信发送出去
if(message.length()>70)
{
ArrayList<String> msgs = sms.divideMessage(message);
for(String msg:msgs)
{
sms.sendTextMessage(phoneNumber, null, msg, sentPI, deliverPI);
}
}else
{
sms.sendTextMessage(phoneNumber, null, message, sentPI, deliverPI);
} ContentValues values = new ContentValues();
try
{
//发送时间
values.put("date", System.currentTimeMillis());
//阅读状态
values.put("read", 0);
//1为收,2为发
values.put("type", 2);
//送达号码
values.put("address", number);
//送达内容
values.put("body", text);
//插入短信库
getContentResolver().insert(Uri.parse("content://sms/sent"), values);
}catch (Exception e)
{
e.printStackTrace();
}finally
{
values = null;
}
}
}
public void send()
{
if(!TextUtils.isEmpty(number)&&!TextUtils.isEmpty(text))
{
SmsManager sms = SmsManager.getDefault();
//若短信字数超过70个字符,将这条短信拆分成多条短信发送出去
if(message.length()>70)
{
ArrayList<String> msgs = sms.divideMessage(message);
for(String msg:msgs)
{
sms.sendTextMessage(phoneNumber, null, msg, sentPI, deliverPI);
}
}else
{
sms.sendTextMessage(phoneNumber, null, message, sentPI, deliverPI);
} ContentValues values = new ContentValues();
try
{
//发送时间
values.put("date", System.currentTimeMillis());
//阅读状态
values.put("read", 0);
//1为收,2为发
values.put("type", 2);
//送达号码
values.put("address", number);
//送达内容
values.put("body", text);
//插入短信库
getContentResolver().insert(Uri.parse("content://sms/sent"), values);
}catch (Exception e)
{
e.printStackTrace();
}finally
{
values = null;
}
}
}
解决方案 »
- Java类转为UML类图工具
- 求教android的OAuth的app key和app secret怎么获得?
- 想做个wifi程序作为AP热点,求指导
- android launcher 实现翻页动画
- 本人用模拟器一点心得,希望可以帮助到大家。
- activity 不响应ontouch....
- 求教在使用HttpPost类的时候,在新建的时候一直都在报错
- 求GoogleAndroidSDK开发范例大全源码 pdf 和 OPhone应用开发权威指南 pdf 下载
- 新ADT环境下,初始化控件问题
- android layout 的背景覆盖了子控件
- 大量Android免积分资料(教程+工具+源码)汇总
- HTML5 开发 Android应用的问题
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.WRITE_SMS"/>我用的真机2.3 是可以的
发现用 content://sms/sent 也可以存进去
那么可能是你没添加写短信权限
CONTENT_URI = Uri.parse("content://mms/sent");