Android短信发送
MessageActivity.java 的代码
package cn.messpackage;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.telephony.SmsManager;
import android.view.View;//视图的引用
import android.widget.Button;//按钮的引用,不引用按钮功能将不能实现。
import android.widget.EditText;
public class MessageActivity extends Activity {
/** Called when the activity is first created. */
public EditText textnum;//在内部类定义一个放号码的文本变量。
private EditText textconter;//定义一个放内容的文本变量。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button buttonsent =(Button)this.findViewById(R.id.butsent);//找到发送按钮
textnum =(EditText)this.findViewById(R.id.editTextnumber);//号码文本框
textconter=(EditText)this.findViewById(R.id.editTextcontent);//内容文本框
buttonsent.setOnClickListener(new View.OnClickListener() {//实现setOnClickListener类(系统自带)的OnClickListener接口(系统自带)
@Override
public void onClick(View v) {//OnClickListener接口中的onClick方法。
// TODO Auto-generated method stub
//EditText textnum =(EditText)MessageActivity.this.findViewById(R.id.editTextnumber);//一样在方法内定义来获取文本内容。
String number=textnum.getText().toString();//得到文本框输入的号码。
String conter =textconter.getText().toString();
SmsManager smsManager=SmsManager.getDefault();//取得系统默认的短信管理器对象。
List<String>conter2= smsManager.divideMessage(conter);//检索短息内容文字的个数超过70个分成多条发送。
for(String senconter:conter2){
smsManager.sendTextMessage(number, null, senconter, null, null);}//发送文本内容短息,还有(sendDataMessage)、(sendMultipartTextMessage)括号内容对应(接收方号码,短息中心号码可以为null,短信内容,是否发送成功,是否接收成功)
Toast.makeText(MessageActivity.this, "Sent over", 1).show();
//弹出提示对话框,(Activity名,” 提示内容”,显示时间).Show();
}
});
}
}
AndroidManifest.xml 的代码
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="cn.messpackage"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="7" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:label="@string/app_name"
android:name=".MessageActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission android:name="android.permission.SEND_SMS"/>
//这一句是重点,本句是对机器内部实现短信发送的一个申请。
</manifest>