Android短信发送器(2)


在上一篇的 《Android短信发送器》其中,发送功能并不完善,当发送内容超过限定字数时,短信就会发送失败,此时就需要判断内容是否超过限制,如果不超过限制,就直接发送,反之,则对其进行处理再发送,这就需要一个函数来对其进行分割,divideMessage()函数正好实现这个功能,其返回值为list类型,所以需要先new一个list对象。整体伪代码表示如下:

if(文本内容 < 70)
	直接发送;
else
{
	创建list对象,接受divideMessage(文本内容)返回值;
	遍历短信内容,发送短信;
}
修改代码如下:

  1. //响应按钮单击事件  
  2.     @Override  
  3.     public void onClick(View v) {  
  4.         switch (v.getId()) {  
  5.         case R.id.button1:  
  6.             //获取两个editText中的内容  
  7.             String num = et_num.getText().toString().trim();  
  8.             String content = et_content.getText().toString().trim();  
  9.             //若号码或内容为空就发出警告  
  10.             if (TextUtils.isEmpty(num)||TextUtils.isEmpty(content))  
  11.                 Toast.makeText(this, R.string.warning1, 1).show();  
  12.             else  
  13.             {   //获取短信管理器,导入包Android.telephony.SmsManager  
  14.                 SmsManager sm = SmsManager.getDefault();  
  15. List<String> contents = sm.divideMessage(content);
  16. for(String sms:contents)  //遍历短信内容
  17.                     //系统发送短信API  
  18.                     sm.sendTextMessage(num, null, content, nullnull);  
  19.             }  
  20.             break;  
  21.   
  22.         default:  
  23.             break;  
  24.         }         
  25.     }  




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值