赵雅智:android发短信操作
2013-05-28 18:50
218 查看
创建android项目
创建界面布局
TextView文本
EditText电话号码及姓名输入框
发送短信按钮
处理发生短信请求
获取控件
给发生短信按钮设置点击事件
获取短信号码及内容
判断短信号码及内容是否为空
获取短息的管理器对象
如果你的字符数大于了70拆分
发送短信的处理
添加发送短信的权限
android模拟器5554给5556发送短信
模拟器5556接受短信
当5554给5556发送大于70的短信时进行自动拆分
当5556接收大于70字符的短信时,收到的内容将会自动拆分显示
创建界面布局
TextView文本
EditText电话号码及姓名输入框
发送短信按钮
处理发生短信请求
获取控件
给发生短信按钮设置点击事件
获取短信号码及内容
判断短信号码及内容是否为空
获取短息的管理器对象
如果你的字符数大于了70拆分
发送短信的处理
添加发送短信的权限
strings.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">lession01_sms</string> <string name="action_settings">Settings</string> <string name="phone_num">请输入手机号码</string> <string name="phone_content">请输入发送内容</string> <string name="phone_button">发送短信</string> </resources>
布局文件:activity_sms.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".SmsActivity" > <TextView android:id="@+id/view_phone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/phone_num" /> <EditText android:id="@+id/edit_num" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="phone" android:layout_below="@+id/view_phone" android:layout_alignParentLeft="true" /> <TextView android:id="@+id/view_content" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/phone_content" android:layout_below="@+id/edit_num" /> <EditText android:id="@+id/edit_content" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="text" android:minLines="5" android:layout_below="@+id/view_content"/> <Button android:id="@+id/button_send" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/phone_button" android:layout_below="@+id/edit_content"/> </RelativeLayout>
添加权限
SmsActivity.java
package com.example.lession01_sms; import java.util.ArrayList; import android.os.Bundle; import android.app.Activity; import android.app.PendingIntent; import android.content.Intent; import android.telephony.SmsManager; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class SmsActivity extends Activity { // 声明控件对象 public Button btn_send; public EditText edit_num; public EditText edit_content; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 设置显示的视图(布局文件) setContentView(R.layout.activity_sms); // 获取控件对象 btn_send = (Button) findViewById(R.id.button_send); edit_num = (EditText) findViewById(R.id.edit_num); edit_content = (EditText) findViewById(R.id.edit_content); // 为按钮控件注册事件 btn_send.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { // 获取电话号码 String phone_num = edit_num.getText().toString(); // 获取发送内容 String phone_content = edit_content.getText().toString(); // 获取短信管理器对象 SmsManager smsManager = SmsManager.getDefault(); // 意图对象 PendingIntent pendingIntent = PendingIntent.getBroadcast( SmsActivity.this, 0, new Intent(), 0); //70分页 ArrayList<String> contents = smsManager.divideMessage(phone_content); for(String c :contents){ smsManager.sendTextMessage(phone_num, null, c, pendingIntent, null); } // 发送信息操作 smsManager.sendTextMessage(phone_num, null, phone_content, pendingIntent, null); // 吐司效果 Toast.makeText(SmsActivity.this, "发送完毕", Toast.LENGTH_LONG) .show(); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.sms, menu); return true; } }
android模拟器5554给5556发送短信
模拟器5556接受短信
当5554给5556发送大于70的短信时进行自动拆分
当5556接收大于70字符的短信时,收到的内容将会自动拆分显示
相关文章推荐
- pc(电脑)用java通过adb操作android手机发短信及中文乱码解决
- android上拨打电话,发短信,存联系人的操作
- android--笔记--调用系统操作(打电话、发短信、发邮件、打开网页等)
- android发短信操作
- 对象控件android(4)_发短信操作
- 赵雅智:android发彩信操作
- 赵雅智_Android_网络操作工具类
- Android 三种延迟操作的实现方法
- Android_02_在内部或外部存储中读写文件的操作
- (转载)在Android中使用Handler和Thread线程执行后台操作
- android SQLite数据库的基本操作
- adb、sqlite3操作android数据库
- Android之对Wifi的操作
- Android - 文件读写操作 总结
- <转载>Android通过onDraw实现在View中绘图操作
- Android常用的两种数据库操作方式总结
- android 通过webservice操作sql数据库
- Android 中 Runnable 和Thread 实现多线程操作的小结
- Android 联系人数据库介绍以及对联系人的基本操作
- android 双卡手机发短信/判断手机是否为双卡