短信发送器
短信发送器和电话拨号器步骤差不多,需要注意的是当获取到短信内容时,如果短信内容非常多需要对短信内容进行拆分,拆分后存到集合里,对短信内容多条发送
效果图:
界面布局:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <!--显示控件-->
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/moblie"
- />
- <!--文本框按钮-->
- <EditText
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:id="@+id/moblie"
- />
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/content"
- />
- <EditText
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:minLines="3"
- android:id="@+id/content"
- />
- <Button
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/button"
- android:id="@+id/button"
- />
- </LinearLayout>
Activity:
- package cn.test.sms;
- import java.util.ArrayList;
- import android.app.Activity;
- import android.os.Bundle;
- import android.telephony.SmsManager;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.Toast;
- public class MainActivity extends Activity {
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- Button button =(Button)this.findViewById(R.id.button);
- button.setOnClickListener(new ButtonClickLister()); //点击事件的处理对象
- }
- //监听对象实现拨打功能
- private class ButtonClickLister implements View.OnClickListener{
- public void onClick(View v){
- EditText moblieText=(EditText)findViewById(R.id.moblie);
- EditText contentText=(EditText)findViewById(R.id.content);
- String moble =moblieText.getText().toString();//获取电话号
- String content =contentText.getText().toString();//获取短信内容
- SmsManager smsManager=SmsManager.getDefault();//获得短信管理器
- ArrayList<String> texts=smsManager.divideMessage(content);//对短信内容进行拆分
- for(String text:texts){
- smsManager.sendTextMessage(moble, null, text, null, null); //短信发送
- }
- //采用吐西方式提示用户发送成功
- Toast.makeText(getApplicationContext(), R.string.success, 1).show();
- }
- }
- }
添加短信服务权限:
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="cn.itcast.action"
- android:versionCode="1"
- android:versionName="1.0">
- 略....
- <uses-sdk android:minSdkVersion="8" />
- <!-- 短信服务权限 -->
- <uses-permission android:name="android.permission.SEND_SMS" />
- </manifest>