虽然手机内置了短信发送器,但是有时候为了特定的需求项目可能需要自己设计的短信发送器,下面是一个发送短信的小例子
首先是布局文件main.xml
<?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/hello"
/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/mobileCode"
/>
<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="4"
android:id="@+id/messageContent"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button"
android:id="@+id/sendButton"
/>
</LinearLayout>
接着是资源文件strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">请输入对方电话号码</string>
<string name="app_name">发送短信</string>
<string name="button">发送</string>
<string name="content">请输入短信内容</string>
<string name="status">发送成功</string>
</resources>
最后是处理响应的Activity
package com.lamp.activity;
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;
import android.widget.Toast;
public class SMSActivity extends Activity {
public EditText mobileText = null;
public EditText contentText = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mobileText = (EditText)this.findViewById(R.id.mobileCode);
contentText = (EditText)this.findViewById(R.id.messageContent);
Button button = (Button)this.findViewById(R.id.sendButton);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
String mobile = mobileText.getText().toString();
String content = contentText.getText().toString();
SmsManager sms = SmsManager.getDefault();
//当信息长度超过40个字符,分多次发送
if(content.length() > 40){
List<String> contents = sms.divideMessage(content);
for(String text : contents){
sms.sendTextMessage(mobile, null, text, null, null);
}
}else{
sms.sendTextMessage(mobile, null, content, null, null);
}
//信息发送完后的提示信息
Toast.makeText(SMSActivity.this, R.string.status, Toast.LENGTH_SHORT).show();
}
});
}
}
还有记得要在清单文件AndroidManifest.xml中注册发送短信的权限
<!-- 注册发送短信的权限 -->
<uses-permission android:name="android.permission.SEND_SMS" />
分享到:
相关推荐
在android模拟环境下,实现一个短信发送器
通过阅读和分析这些代码,开发者可以更好地理解和实践Android短信发送的整个过程。 需要注意的是,从Android 6.0(API级别23)开始,部分危险权限(如SEND_SMS)需要在运行时动态请求。因此,确保在发送短信之前...
A页面打开B页面,选中B的值,关闭B页面,并把B中选中的值返回A页面,短信发送器代码,导入ADT eclipse开发环境
android短信发送器
Android自定义短信发送器源代码
Android应用开发之拨号器和短信发送器的代码实现
2、从获得的内容中解析出短信发送者和短信内容 3、在Activity中注册广播 4、添加接收短信权限 下面放上具体的代码 activity_main.xml文件用于显示短信发送者号码和显示短信内容 <?xml version=1.0 encoding=...
简易Android短信发送器,带联系人目录
简单android短信发送器源码,详情请进入博客-Android分类下查看
通过理解并掌握这两种发送短信的方式,开发者可以根据实际需求灵活地在Android应用中集成短信发送功能。在实际开发中,可能还需要关注如短信验证码、短信广播接收器等相关知识,以实现更复杂的短信功能。
在Android平台上,开发人员可以利用系统的短信服务API来实现后台发送短信的功能。这在很多应用场景中都很常见,比如系统通知、验证码验证或者自动化任务等。本文将深入探讨如何在Android中实现在后台发送短信,以及...
基于Android平台的短信发送器实现探秘(全文).docx
这个"Android短信发送案例"提供了深入学习如何在Android应用程序中实现短信发送功能的机会。如果你是Android开发的初学者,这个案例将是一个极好的起点,它能帮助你理解并掌握这一关键技能。 首先,我们来了解...
综上所述,通过Unity调用Android API实现短信发送和震动功能涉及到了跨平台通信、Android原生开发以及Unity的插件系统。理解这些步骤后,你可以扩展到其他Android API,进一步增强Unity游戏的功能性和互动性。记得在...
在Android平台上,智能短信管理器是一款非常实用的应用程序,它为用户提供了全面的短信管理和组织功能,极大地提升了处理日常通信的效率。以下是该应用的主要特点和相关知识点的详细解释: 1. **对话形式展示**:...
"Android短信收发流程分析" Android 短信收发流程是 Android 系统源码中一个非常重要的模块,它负责处理短信的发送和接收过程。在这个流程中,涉及到多个组件和类别,包括 ComposeMessageActivity、WorkingMessage...
这个"Android短信发送源码"示例为你提供了一种简单易懂的方法来实现这一功能。下面将详细讲解相关知识点,包括Android SMS API的使用、权限管理以及实际的代码实现。 首先,Android系统为发送短信提供了`SmsManager...
二、Android短信发送 短信发送功能则涉及到短信服务和广播接收器等组件: 1. SMS Provider:Android系统提供了SMS Provider来存储短信数据,位于`content://sms`内容提供者中。可以通过ContentResolver查询或修改...