/**发送与接收的广播**/
    String SENT_SMS_ACTION = "SENT_SMS_ACTION";
    String DELIVERED_SMS_ACTION = "DELIVERED_SMS_ACTION";
 
    private BroadcastReceiver sendMessage = new BroadcastReceiver() {
 
        @Override
        public void onReceive(Context context, Intent intent) {
            Log.i("TAG""send。。" + intent.getAction() + "---" + getResultCode() + "---" + getResultData());
            //判断短信是否发送成功  
            switch (getResultCode()) {
            case Activity.RESULT_OK:
                Toast.makeText(context, "短信发送成功", Toast.LENGTH_SHORT).show();
                break;
            default:
                Toast.makeText(mContext, "发送失败", Toast.LENGTH_LONG).show();
                break;
            }
        }
    };
 
    private BroadcastReceiver receiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            Log.i("TAG""receiver。。" + intent.getAction() + "---" + getResultCode() + "---" + getResultData());
            //表示对方成功收到短信  
            Toast.makeText(mContext, "对方接收成功", Toast.LENGTH_LONG).show();
        }
    };
 
    /**  
     * 参数说明  
     * destinationAddress:收信人的手机号码  
     * scAddress:发信人的手机号码   
     * text:发送信息的内容   
     * sentIntent:发送是否成功的回执,用于监听短信是否发送成功。  
     * DeliveryIntent:接收是否成功的回执,用于监听短信对方是否接收成功。  
     */
    private void sendSMS(String phoneNumber, String message) {
        // ---sends an SMS message to another device---  
        SmsManager sms = SmsManager.getDefault();
 
        // create the sentIntent parameter  
        Intent sentIntent = new Intent(SENT_SMS_ACTION);
        PendingIntent sentPI = PendingIntent.getBroadcast(this0, sentIntent, 0);
 
        // create the deilverIntent parameter  
        Intent deliverIntent = new Intent(DELIVERED_SMS_ACTION);
        PendingIntent deliverPI = PendingIntent.getBroadcast(this0, deliverIntent, 0);
 
        //如果短信内容超过70个字符 将这条短信拆成多条短信发送出去  
        if (message.length() > 70) {
            ArrayList<String> msgs = sms.divideMessage(message);
            for (String msg : msgs) {
                sms.sendTextMessage(phoneNumber, null, msg, sentPI, deliverPI);
            }
        else {
            sms.sendTextMessage(phoneNumber, null, message, sentPI, deliverPI);
        }
    }
 
 
摘自:http://my.oschina.net/onlytwo/blog/260713

(转)Android短信的发送和接收监听的更多相关文章

  1. Android短信的发送和接收监听

    /**发送与接收的广播**/ String SENT_SMS_ACTION = "SENT_SMS_ACTION"; String DELIVERED_SMS_ACTION = & ...

  2. Android 短信模块分析(四) MMS之短信的发送与接收

     MMS之短信的发送与接收分析: 一.信息发送: com.android.mms.data.WorkingMessage.java 类 send()函数: public void send() { . ...

  3. Android 节日短信送祝福(UI篇:3-选择短信与发送短信的Activity的实现)

    一.ChooseMsgActivity的实现 1.布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/ ...

  4. 基于android 社会的app短信分享 发送回调事件的实现

    摘要 前一段时间.由于项目的需要,采用ShareSDK该共享功能.其中包含 短信股吧.和呼叫系统,以分享要与成功处理服务器交互的消息后,(我不在乎在这里,收到.仅仅关心发出去了).可是ShareSDk ...

  5. android短信发送器源代码

    Activity类: import java.util.List;import android.app.Activity;import android.app.PendingIntent;import ...

  6. Android短信监听实现,及Android4.4之后短信机制变更

    前阵子公司有一个项目,简单的监听短信应用,功能只有如下两个: 1.监听短信并获取短信内容上传服务器: 2.从服务器获取短信内容,发送出去    按照传统的思路,监听短信我们有两种方式:第一种是使用广播 ...

  7. Android短信发送器_08

    1.string xml代码 <?xml version="1.0" encoding="utf-8"?> <resources> &l ...

  8. Android短信发送器(2)

    在上一篇的<Android短信发送器>当中.发送功能并不完好.当发送内容超过限定字数时,短信就会发送失败,此时就须要推断内容是否超过限制,假设不超过限制.就直接发送,反之.则对其进行处理再 ...

  9. 【mob】Android短信验证+源码

    在很多的应用当中,都涉及到了短信验证的功能,比如在注册或者找回密码的时候,那么我们如何通过第三方的平台来完成这个功能呢? 本面博文就实现短信验证,来做一个小的栗子. 第一步-下载开发包 第二步-将SD ...

随机推荐

  1. IOS-pch文件配置

    --到Xcode7都可以这么解决.亲测. 发现一个好东西.就是这个.pch文件.我的理解是他里面存放了我们在各个controller里面需要的头文件,那这样一来,就免去了在不同的ViewControl ...

  2. 探究JS中的连等赋值问题

    一.引子 最近在看别人的博客时无意中看到一个这样的问题 var a = {n: 1}; var b = a; a.x = a = {n:2}; console.log(a.x); //undefine ...

  3. JTable的应用

    最近项目中使用到一个table表格,表格的样子如下: 可以修改数量,以及折扣,对应的最终价会相应的变化. 随手写了份插件,命名为JTable,可以给热爱jquery 的友友们一个参考: 代码如下: / ...

  4. Hadoop学习资料整理

    1.hadoop相关 hadoop 0.18文档(详细介绍Hadoop,MapReduce,FS Shell,Streaming等) hadoop资料汇总 2.实习的时候用的是streaming,非j ...

  5. 最大匹配算法 (Maximum Matching)

    之所以研究这个算法,是因为最近在研究NLP中文的分词,所谓分词就是将一个完整的句子,例如“计算语言学课程有意思”,分解成一些词组单元“计算语言学,课程,有,意思”. “最大匹配法” 在中文分词中有所应 ...

  6. form表单序列化之后追加字段

    方法是在{}中添加字段 key-value 一一对应,如下: var data = $.param({'state': state}) + '&' + $('#desProForm').ser ...

  7. APUE学习笔记——4.2结构体 struct stat 及其相关函数介绍

    以下不少内容来自man手册 结构体struct stat         结构体struct stat用于保存文件相关的所有信息.         struct stat的基本成员如下所示 struc ...

  8. 各个数据库中top 的表示方法

    Select Top在不同数据库中的使用用法: 1. Oracle数据库 SELECT * FROM TABLE1 WHERE ROWNUM<=N 2. Infomix数据库 SELECT FI ...

  9. Deep Learning深入浅出

    作者:Jacky Yang链接:https://www.zhihu.com/question/26006703/answer/129209540来源:知乎著作权归作者所有.商业转载请联系作者获得授权, ...

  10. [Python] json 报错'xxx is not JSON serializable'的处理方法

    predictions = self.model.predict(x_data, verbose=0)[0] y_pred_idx = np.argmax(predictions) y_pred_pr ...