Android实现短信发送功能

本文实例实现了两个模拟器之间短信的发送功能,分享给大家供大家参考,具体实现内容如下

1.编辑String.xml文件内容为:

<?xml version=”1.0″ encoding=”utf-8″?>
<resources>
<string name=”app_name”>SendMesage</string>
<string name=”action_settings”>Settings</string>
<string name=”hello_world”>Hello world!</string>
<string name=”hello”>请输入手机号码</string>
<string name=”content”>Please input your message</string>
<string name=”send”>Send</string>
</resources>

2.编辑main.xml的内容为:

<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”
xmlns:tools=”http://schemas.android.com/tools”
android:orientation=”vertical”
android:layout_width=”fill_parent”
android:layout_height=”fill_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=”.SendMessage” >
<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/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/message”/>
<Button
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:text=”@string/send”
android:id=”@+id/send”/>
</LinearLayout>

3. SendMessage.java

import java.util.List;

import android.app.Activity;
import android.os.Bundle;
import android.telephony.SmsManager;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class SendMessage extends Activity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_send_message);

    Button button = (Button)this.findViewById(R.id.send);
    button.setOnClickListener(new OnClickListener() {  // 注册按钮单击事件

            @Override
            public void onClick(View arg0) {
                EditText mobileText = (EditText)findViewById(R.id.mobile);//获取电话号码
                String mobile = mobileText.getText().toString();

                EditText messageText = (EditText)findViewById(R.id.message);//获取短信内容
                String message = messageText.getText().toString();

               // 移动运营商允许每次发送的字节数据有限,可以使用Android提供的短信工具。
                if(message != null) {
                    SmsManager sms = SmsManager.getDefault();

                    List texts = sms.divideMessage(message);

                    for(String text : texts) {
                        sms.sendTextMessage(mobile, null, text, null, null);
                    }
                }
            }

    });
  }

  @Override
  public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.send_message, menu);
    return true;
  }

}

4. 编辑AndroidManifest.xml内容,添加一条语句即可

<!– 注册发送短信的权限 –>
<uses-permission android:name=”android.permission.SEND_SMS” />

如果没有注册这个短信发送的权限,将使用不了系统的短信发送功能。在其他应该开发中,有使用到系统功能的时候,必须在这个文件中注册。

5. 启动两个模拟器

  • 第一个模拟器,通过eclipse启动,运行该应用即可启动一个android模拟器。ID通常为5554.
  • 第二个模拟器,通过DOS命令启动。CD到sdk的tools目录下,用命令:emulator -avd “AVD名称”

6. 使用模拟器的ID作为电话号码发送短信

效果图:

希望本文所述对大家学习Android软件编程有所帮助。

(0)

相关推荐

  • Android系列之Intent传递对象的几种实例方法

    在Android中intent传递对象主要有2种方式分别是,Bundle.putSerializable(Key,Object)和Bundle.putParcelable(Key, Object);当然这些Object是有一定的条件的,前者是实现了Serializable接口,而后者是实现了Parcelable接口,以下是我为大家做的一个实例 首先我们建立一个工程项目命名为:ObjectTestDemo 然后我们再修改main.xml布局文件,主要增加2个按钮view plaincopy to

  • android中可以通过两种方式调用接口发送短信

    第一:调用系统短信接口直接发送短信:主要代码如下: 复制代码 代码如下: //直接调用短信接口发短信 SmsManager smsManager = SmsManager.getDefault(); List<String> divideContents = smsManager.divideMessage(content); for (String text : divideContents) { smsManager.sendTextMessage("150xxxxxxxx&qu

  • Android使用Intent发送短信的实现方法

    本文实例讲述了Android使用Intent发送短信的实现方法.分享给大家供大家参考,具体如下: 在一个Activity中使用Intent发送短信 package com.zhuguangwei; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.view.View; import android.

  • Android短信发送器实现方法

    本文实例讲述了Android短信发送器实现方法.分享给大家供大家参考.具体如下: 这里模拟android短信发送器的实现 AndroidManifest.xml清单文件: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ljq.

  • Android创建简单发送和接收短信应用

    本文实例为大家分享了Android创建发送和接收短信应用的简单实现过程,供大家参考,具体内容如下 一.接收短信 项目的结构如下:一个简单的接收和发送短信的功能 1.定义一个接收短信的广播:当手机接收到一条短信的时候,系统会发出一条值为android.provider.Telephony.SMS_RECEIVED 的广播,这条广播里携带着与短信相关的所有数据. // 接收短信的广播 class MessageReceiver extends BroadcastReceiver { @Overrid

  • android中intent传递list或者对象的方法

    本文实例讲述了android中intent传递list或者对象的方法.分享给大家供大家参考.具体实现方法如下: 方法一: 如果单纯的传递List<String> 或者List<Integer>的话 就可以直接使用 代码如下: 复制代码 代码如下: intent.putStringArrayListExtra(name, value)  intent.putIntegerArrayListExtra(name, value) 方法二: 如果传递的是List<Object>

  • Android Mms之:短信发送流程(图文详解)

    信息的发送,对于Mms应用程序来讲主要就是在信息数据库中创建并维护一条信息记录,真正的发送过程交由底层(Frameworks层)函数来处理. 总体的来讲,当信息创建完成后,对于信息通常有三个去处,一个是放弃这个信息,也就是用户不想要此信息,一旦选择,信息将不会被保存:第二个去处就是保存为草稿:最后一个去处就是发送此信息. 当点击了发送后,UI层暂不会有变化,UI层要监听负责发送的各个类的回调信息和数据库的变化信息来更新UI.信息发送的第一站是WorkingMessage,它会先处理一下信息的相关

  • Android实现将已发送的短信写入短信数据库的方法

    短信是手机常见的功能,本文就以实例形式讲述了Android实现将已发送的短信写入短信数据库的方法.分享给大家供大家参考之用.具体如下: 一般来说,把短信发送出去以后,需要把已发送的短信写入短信数据库.短信数据库有多个Uri,其中已发送的Uri是content://sms/sent. 具体功能代码如下: // 把短信写入数据库 public void writeMsg(){ try{ ContentValues values = new ContentValues(); // 发送时间 value

  • Android实现发送短信功能实例详解

    本文实例分析了Android实现发送短信功能的方法.分享给大家供大家参考,具体如下: 短信和打电话一样,都是android手机的基本功能,下面以实例说明android如何实现发送短信的功能. 程序如下所示: import java.util.regex.Matcher; import java.util.regex.Pattern; import android.app.Activity; import android.app.PendingIntent; import android.cont

  • Android发送短信功能代码

    本文实例讲述了Android发送短信功能代码,是进行Android程序开发中非常常见的重要功能.分享给大家供大家参考之用.具体方法如下: // 发送短信 public void sendMsg(){ String content = edtSend.getText().toString(); SmsManager smsManager = SmsManager.getDefault(); List<String> divideContents = smsManager.divideMessag

  • Android Intent的几种用法详细解析

    Intent应该算是Android中特有的东西.你可以在Intent中指定程序要执行的动作(比如:view,edit,dial),以及程序执行到该动作时所需要的资料.都指定好后,只要调用startActivity(),Android系统会自动寻找最符合你指定要求的应用程序,并执行该程序. 下面列出几种Intent的用法显示网页: 复制代码 代码如下: Uri uri = Uri.parse("http://www.google.com");Intent it  = new Intent

  • Android编程实现读取手机联系人、拨号、发送短信及长按菜单操作方法实例小结

    本文实例讲述了Android编程实现读取手机联系人.拨号.发送短信及长按菜单操作方法.分享给大家供大家参考,具体如下: 1.Andrid项目结构图↓主要操作图中红色方框内的文件. 2.首先布局代码如下 a, main.xml 程序运行的主界面,主要用ListView列表控件展示手机联系人 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://s

  • Android实现短信加密功能(发送加密短信、解密本地短信)

    短信加密此类功能由于新手学习的需求量较小,所以在网上很少有一些简单的demo供新手参考.小编做到此处也是花了比较多的时间自我构思,具体的过程也是不过多描述了,讲一下demo的内容. demo功能: 1.可以发送短信并且加密(通过改变string中的char) 2.能够查看手机中的短信 3.能够给收到的加密短信解密. 涉及到的知识点: 1.intent bundle传递 2.ContentResolver获取手机短信 3.listveiw与simpleAdapter 4.发送短信以及为发送短信设置

随机推荐