Android 2.3发短信详细流程(3)

来源:未知 责任编辑:责任编辑 发表时间:2015-03-01 01:34 点击:

public void sendText(String destAddr, String scAddr,
            String text, PendingIntent sentIntent, PendingIntent deliveryIntent) {
        mPhone.getContext().enforceCallingPermission(
                "android.permission.SEND_SMS",
                "Sending SMS message");
        if (Log.isLoggable("SMS", Log.VERBOSE)) {
            log("sendText: destAddr=" + destAddr + " scAddr=" + scAddr +
                " text='"+ text + "' sentIntent=" +
                sentIntent + " deliveryIntent=" + deliveryIntent);
        }
        mDispatcher.sendText(destAddr, scAddr, text, sentIntent, deliveryIntent);
    }
IccSmsInterfaceManager对象的sendText()方法调用了SMSDispatcher类的sendText()方法,继续往下:
5. 第四阶段:SMSDispatcher.java(frameworks/base/telephony/java/com/android/internal/telephony/SMSDispatcher.java)

该类是一个抽象类,它的sendText()并没有实现,它的实现类是GsmSMSDispatcher.java或者CdmaSMSDispatcher.java,假设我们用的GSM网络,则此时调用到GsmSMSDispatcher的sendText()方法。

6. 第五阶段:GsmSMSDispatcher.java(frameworks/base/telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java)

核心代码如下:

view plaincopy to clipboardprint?protected void sendText(String destAddr, String scAddr, String text, 
            PendingIntent sentIntent, PendingIntent deliveryIntent) { 
        SmsMessage.SubmitPdu pdu = SmsMessage.getSubmitPdu( 
                scAddr, destAddr, text, (deliveryIntent != null)); 
        sendRawPdu(pdu.encodedScAddress, pdu.encodedMessage, sentIntent, deliveryIntent); 
    } 
...... 
protected void sendText(String destAddr, String scAddr, String text,
            PendingIntent sentIntent, PendingIntent deliveryIntent) {
        SmsMessage.SubmitPdu pdu = SmsMessage.getSubmitPdu(
                scAddr, destAddr, text, (deliveryIntent != null));

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • android 屏幕保护
  • Android 完全退出程序
  • 原创:Android应用开发-Andorid歌词秀,含源码
  • 众多Android 开源项目推荐,给力工作给力学习
  • Android成长的幕后推手:工程师鲁宾
  • MIUI:10个亮点及5处不足
  • Android歌词秀1.5版
  • 自己开发计算器(4)-完成!源代码公开!
  • Android开发者指南(29) —— USB Host and Accessory
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索 - 移动版 - 返回顶部
Copyright © 2008-2013 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1