Android--入门---11---(短信发送器---SMS)

原创 2012年03月24日 22:00:55

此应用是一个能够调用系统的SmsManager类的两个方法实现的

文件清单:

1.SmsActivity.java

2.AndroidManifest.xml

3.smslayout.xml

4.string.xml

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1.SmsActivity.java

--------------------------------------------------------------------------------------

package com.hisoft.activity;

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 SmsActivity extends Activity {

    private Button send;
    private EditText phone;
    private EditText content;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.smslayout);
        initComponent();
    }

    public void initComponent() {

        phone = (EditText) this.findViewById(R.id.edt_num);
        content = (EditText) this.findViewById(R.id.content);
        send = (Button) this.findViewById(R.id.button);
        send.setOnClickListener(new ButtonOnclickListener());

    }

    private final class ButtonOnclickListener implements View.OnClickListener {

        @Override
        public void onClick(View v) {
            String message = content.getText().toString();
            String number = phone.getText().toString();
            SmsManager manager = SmsManager.getDefault();
            ArrayList<String> messages = manager.divideMessage(message);
            /*
             * 由于短信的长度是由国际组织定义的,汉字70个 所以在发送之前必须判断其长度,如果超出定义长度则将短信信息拆分
             */
            for (String msg : messages) {// 采用增强for循环迭代短信,分条发送
                // manager.sendTextMessage(destinationAddress, scAddress, text,
                // sentIntent, deliveryIntent)
                /**
                 * destinationAddress:要发送的电话号码 scAddress :短信中心的地址 text :短信内容
                 * sentIntent:本机接收是否发送成功的状态的Intent ,如不需要此功能则填写null
                 * deliveryIntent :本机接收是否对方接收到短信的状态的Intent,如不需要此功能则填写null
                 */
                manager.sendTextMessage(number, null, msg, null, null);
            }
            /**
             * android 中的通知有三种(参见api 中 developer | Ntification )
             *  A Toast Notification, for brief messages that come from the background.
             *  A Status Bar Notification, for persistent reminders that come from the background and request the user's response.
             *  
             *  A Dialog Notification, for Activity-related notifications.
          * status bar Notification :一般用于服务,广播接收者
          * Dialog Notification:较为重要的信息
          * Toast :用户体验最好
             */
            Toast.makeText(SmsActivity.this, R.string.succes, Toast.LENGTH_SHORT).show();
            //SmsActivity.this  == getApplicationContent
        }

    }

}

2.AndroidManifest.xml

--------------------------------------------------------------------------------------

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.hisoft.activity"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="7" />
        <uses-permission android:name="android.permission.SEND_SMS"/>
        <!--android.permisson.SEND_SMS 这个权限是错误  permisson  不是  permision  哎   一个笔误!,叫我调了好久,所以最好每次书写一些常量时,最好copy   && 权限的注册注册在application的前面-->
    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".SmsActivity"
            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>

3.smslayout.xml

--------------------------------------------------------------------------------------

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/promit" />
    <EditText
        android:id="@+id/edt_num"<!--对于代码中要用到的控件必须设置ID 以供查找调用-->
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:hint="@string/mobile"/>
        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/content"/>

        <EditText
            android:id="@+id/content"
            android:layout_width="fill_parent"
            android:layout_height="350dp"
            android:hint="@string/content" />

        <Button
            android:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/button"/>    

</LinearLayout>

4.string.xml

--------------------------------------------------------------------------------------


<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="hello">Hello World, SmsActivity!</string>
    <string name="app_name">短信发送器</string>
    <string name="promit">短信发送至</string>
    <string name="mobile">电话号码</string>
    <string name="content">短信内容</string>
    <string name="button">发送</string>
    <string name="succes">发送成功!</string>

</resources>



android短信发送器

  • 2015年10月15日 08:38
  • 2.54MB
  • 下载

Android短信发送器

  • 2017年02月16日 17:46
  • 1015KB
  • 下载

Android 短信发送器

Android中原始系统就带有很多功能 之前讲解过电话发送器的文章,现在我们来说一说短信发送器短信发送器:逻辑比电话拨号器要难一点 先是获取手机号码及短信类容 然后在获取短信管理器实例 短信中一般有...

Android短信发送器

  • 2016年06月29日 19:06
  • 1.91MB
  • 下载

android模拟环境短信发送器

  • 2013年07月29日 11:48
  • 1.17MB
  • 下载

Android 短信发送器

public class MainActivity extends AppCompatActivity { private EditText et_number; private E...

android之短信发送器

  • 2015年09月14日 20:43
  • 1.17MB
  • 下载

Android实现电话拨号器和短信发送器

电话拨号器和短信发送器是Android初学者很好的练习项目,今天就找了两个写得很不错的例子学习下 电话拨号器 实现原理:用户输入电话号码,当点击拨打的时候,由监听对象捕获,监听对象通过文本控件获取到用...

Android 短信发送器的实现

 图main.xml 布局文件

Android短信发送器案例

[1]当调用页面关闭的时候就会调用onActivityResult()方法 [2]要获取调用页面的返回结果,这需要使用startActivityForResult()方法 [3]当选择页面关闭时,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android--入门---11---(短信发送器---SMS)
举报原因:
原因补充:

(最多只允许输入30个字)