Android入门:利用SmsManager发送短信

我们可以通过Intent调用发送短信的服务,但是也可以通过SmsManager发送;


一、为何需要自己开发短信发送器


虽然在Android系统中已经存在发送短信的应用,但是如果我们在开发其他应用时需要集成发送短信功能,则很方便。


二、开发短信发送器


应用目标:将应用安装到5554模拟器上,并发送给5556的模拟器;

界面介绍:



核心代码:

(1)SmsManager manager = SmsManager.getDefault(); //获得默认的消息管理器

(2)ArrayList<String> list = manager.divideMessage(String txt); //拆分长短信

(3)manager.sendTextMessage(String phone,null,String content,null,null); //发送短信


在AndroidManifest.xml中添加:


<uses-permission android:name="android.permission.SEND_SMS"/>

MainActivity.java

package org.xiazdong; import java.util.ArrayList; import android.app.Activity; import android.os.Bundle; import android.telephony.SmsManager; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { private Button btn; private EditText phoneEt,contextEt; private OnClickListener listener = new OnClickListener(){ @Override public void onClick(View v) { String phone = phoneEt.getText().toString(); String context = contextEt.getText().toString(); SmsManager manager = SmsManager.getDefault(); ArrayList<String> list = manager.divideMessage(context); //因为一条短信有字数限制,因此要将长短信拆分 for(String text:list){ manager.sendTextMessage(phone, null, text, null, null); } Toast.makeText(getApplicationContext(), "发送完毕", Toast.LENGTH_SHORT).show(); } }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btn = (Button)this.findViewById(R.id.btn); phoneEt = (EditText)this.findViewById(R.id.phoneNumberEt); contextEt = (EditText)this.findViewById(R.id.contextEt); btn.setOnClickListener(listener); } }



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值