发送短信基本程序

 


 发送短信的关键程序是通过SmsManager对象的sendTextMessage()方法来完成;其中sendTextMessage()方法需要传入5个值,依次是收件人地址,发送地址,短信内容,发送服务,与送达服务 其中收件人与短信内容上不可以为null;

有码有真相:

public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
......此处省略一点  

  mButton.setOnClickListener(new Button.OnClickListener() {
   @Override
   public void onClick(View v) {
    // TODO Auto-generated method stub
    String strDestAddress = mPhone.getText().toString();
    String strMessage = mContent.getText().toString();

    /* 构建一取得default instance的SmsManager对象 */
    SmsManager smsManager = SmsManager.getDefault();

    if (iswithin70(strMessage) == true) {
     try {
      PendingIntent mPI = PendingIntent.getBroadcast(
        MessageActivity.this, 0, new Intent(), 0);
      smsManager.sendTextMessage(strDestAddress, null,
        strMessage, mPI, null);
     } catch (Exception e) {
      e.printStackTrace();
     }
     Toast.makeText(MessageActivity.this, "发送成功",
       Toast.LENGTH_SHORT).show();
    }
   }

private boolean iswithin70(String msg) {.......}//判断短信内容是否超70个字, 因为GSM的规范是一条短信内容不得超过70个Unicode16 文字

注:SmsManager类中可使用的3种方法

1.sendDataMessage发送Data格式的SMS传送到特定程序的Prot;2.sendMultipartTextMessage发送多条短信;3.sendTextMessage发送文字短信

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值