1:strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">短信发送器</string>
<string name="mobile">请输入手机号</string>
<string name="content">短信内容</string>
<string name="btn">发送短信</string>
<string name="success">短信发送成功</string>
</resources>
2: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/mobile"
/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/mobile"
/>
<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/btn"
android:id="@+id/btn"
/>
</LinearLayout>
3:AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.pnova.sms"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".SmsActity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
4:SmsActity.java
package com.pnova.sms;
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
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;
/**
* 短信发送器
* @author qian.long
*
*/
public class SmsActity extends Activity {
private EditText mobileText;
private EditText contentText;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.mobileText = (EditText) this.findViewById(R.id.mobile);
this.contentText = (EditText) this.findViewById(R.id.content);
Button btn = (Button) this.findViewById(R.id.btn);
btn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String mobile = mobileText.getText().toString();
String content = contentText.getText().toString();
//短信发送管理类android.telephony.SmsManager
SmsManager smsManager = SmsManager.getDefault();
//将可能短信字数过多时拆分
ArrayList<String> texts = smsManager.divideMessage(content);
for (String text : texts) {
//发送短信
smsManager.sendTextMessage(mobile, null, text, null, null);
}
//吐司模式告诉用户短信发送成功
//makeText(Context context//应用的上下文, int resId//提示内容的id, int duration//显示的时长)
Toast.makeText(SmsActity.this, R.string.success, Toast.LENGTH_LONG);
}
});
}
}
分享到:
相关推荐
本自学笔记将深入探讨Android的任务栈机制,以帮助开发者更好地理解和利用这一特性来优化用户体验。 一、任务与任务栈 在Android中,一个任务(Task)是一个应用程序执行的上下文,它可以包含多个活动(Activity)...
本自学笔记将重点讲解如何在Android项目中创建并使用ListView,包括基本的设置、数据绑定和适配器的使用。 首先,我们需要在布局文件中添加ListView元素。在XML布局文件中,通过`<ListView>`标签定义ListView,可以...
本自学笔记将深入探讨ContentObserver的工作原理、使用场景以及如何实现它。 ContentObserver主要用于监控ContentResolver中的内容更改,这些内容通常存储在ContentProvider中。当某个ContentProvider的数据发生...
在Android开发中,广播接收者(BroadcastReceiver)是Android四大组件之一,它是系统用来传递全局消息的一种机制。当你创建一个BroadcastReceiver,你可以监听系统或应用发送的广播,并在接收到广播时执行相应的处理...
本自学笔记将深入探讨Intent的使用、分类及其在Android系统中的作用。 Intent主要用于启动一个活动(Activity)、服务(Service)或者传递数据。在Android应用中,活动是用户界面的基本单元,而服务则在后台执行...
本自学笔记将深入探讨如何使用Pull解析器(PullParser)来处理XML,这是一种高效且内存友好的方式。 一、XML与Android XML(eXtensible Markup Language)是一种用于标记数据的语言,它定义了数据的结构和样式。在...
在本篇自学笔记中,我们将深入探讨Activity如何启动、运行、暂停、恢复以及销毁,以及在这些状态之间转换时应如何适当地管理资源。 首先,Activity的生命周期主要由七个关键回调方法组成: 1. **onCreate()**: 当...
广东自学考试本科-复习资料-历年真题 参考广东自学考试本科-复习资料-历年真题 参考广东自学考试本科-复习资料-历年真题 参考广东自学考试广东自学考试本科-复习资料-历年真题 参考广东自学考试本科-复习资料-历年...
项目演练二我们就来开发一个简单的2d动态壁纸,我们知道Android智能手机并不像传统的手机那样可以直接设置一张gif格式的图片作为壁纸,普通手机使用gif格式的图片作为壁纸可以保留gif最大的特点:支持帧播放,可以给...
《Android自学视频教程》[1] 分3篇共21章,其中,第1篇为入门篇,主要包括Android入门、搭建Android开发环境、认识Android模拟器、剖析Android程序、Android常用组件的使用、掌握布局管理器、Android程序调试与错误...
LINUX自学教材------全英文 官方 教材 供自己学习
Java-自学课件---Java简介.ppt
本篇文章将通过分析"RxJava2-Android-Samples-master"项目中的例子,深入讲解RxJava2的关键概念和实践应用。 一、RxJava2基础概念 1. Observables(观察者):在RxJava中,Observables是数据的生产者,可以发布一...
这份“自学SpringBoot--入门文档”将引导你逐步了解并掌握SpringBoot的核心概念和技术栈。 首先,让我们从环境准备开始。在开始SpringBoot的学习之前,你需要确保你的开发环境已经配置好Java Development Kit(JDK...
ccie自学认证-----------------思科100问题
python自学项目-python-
电子工程师自学速成-入门-提高-设计
《Android自学书籍》是一本专为初学者设计的Android开发指南,它以PDF格式提供,内容详尽且层次分明,适合逐步深入学习。在Android的世界里,无论是对编程有兴趣的爱好者还是希望转行进入移动应用开发的专业人士,这...
《Android自学视频教程》[1] 分3篇共21章,其中,第1篇为入门篇,主要包括Android入门、搭建Android开发环境、认识Android模拟器、剖析Android程序、Android常用组件的使用、掌握布局管理器、Android程序调试与错误...
在Android自学的旅程中,制定明确的学习路径至关重要。这两张"android自学路线图"提供了详细的指导,旨在帮助初学者和有经验的开发者更好地理解和掌握这个...希望这两张路线图能为你的Android自学之路提供清晰的方向。