本实例通过SmsManager的sendTextMessage方法实现发送短信关于SmsManager的具体解释大家能够參照:Android开发之SmsManager具体解释
实例执行效果图:
程序代码:
package com.jph.sendmsg; import android.os.Bundle; import android.app.Activity; import android.app.PendingIntent; import android.content.Intent; 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; /** * Describe:</br> * 本实例通过SmsManager的sendTextMessage方法 * 实现发送短信 * @author JPH * Time:2014.07.25 * */ public class SendMsg extends Activity { Button btnSend; EditText edtPnum,edtCont; //创建一个SmsManager对象 SmsManager sManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btnSend=(Button)findViewById(R.id.btnSend); edtCont=(EditText)findViewById(R.id.edtCont); edtPnum=(EditText)findViewById(R.id.edtPnum); btnSend.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub String num=edtPnum.getText().toString(); String content=edtCont.getText().toString(); // 创建一个PendingIntent对象 PendingIntent pi=PendingIntent.getActivity( SendMsg.this,0, new Intent(),0); //获取SmsManager sManager=SmsManager.getDefault(); //发送短信 sManager.sendTextMessage(num, null, content, pi, null); Toast.makeText(SendMsg.this, "发送短信成功", Toast.LENGTH_SHORT).show(); } }); } }
实例分析:
上面的程序用到了一个PendingIntent对象。PendingIntent是对Intent的包装,表示即将发生的意图。主要用在:通知Notificatio的发送。短消息SmsManager的发送和警报器AlarmManager的运行等等。一般通过调用PendingIntent的 getActivity(Context,int, Intent, int), getBroadcast(Context, int, Intent,int), getService(Context, int, Intent, int)静态方法来获取PendingIntent对象。与Intent对象不同的是:PendingIntent一般会传给其他应用组件,从而由其他应用程序来运行PendingIntent包装的Intent。
程序执行所须要的权限:
<uses-permission android:name="android.permission.SEND_SMS"/>
本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/5261542.html,如需转载请自行联系原作者