短信发送流程

短信发送流程:

UI:收件人,内容

发送->选择C网还是G网?

[点击发送]

D/Mms/compose( 1360): [sms]onClick send button mSmsReady[0]=true mSmsReady[1]=true
D/SMS_TRACE( 1360): ComposeMessageActivity confirmSendMessageIfNeeded 912
D/SMS_TRACE( 1360): ComposeMessageActivity sendMessage

[选UIM卡还是SIM卡]

ComposeMessageActivity: sendMessage

[mSimChooserDialog.setListener(new SimChooserDialog.OnSimPickedListener(){};)]

[mWorkingMessage.send(mDebugRecivpients))]

WorkingMessage:send -> preSendSmsWorker

[mStatusListener.onPreMessageSent() ]

[sendSmsWorker -> SmsMessageSender.sendMessage -> queueMessage -> mContext.sendBroadcast SmsReceiverService.ACTION_SEND_MESSAGE ]

D/SMS_TRACE( 1360): SmsMessageSender sendMessage
D/SMS_TRACE( 1360): SmsReceiverService handleMessage intent.getAction = com.android.mms.transaction.SEND_MESSAGE
D/SMS_TRACE( 1360): SmsSingleRecipientSender sendMessage

SmsSingleRecipientSender: sendMessage

[SmsManager smsManager = SmsManager.getDefault(mPhoneId);]

[smsManager.sendMultipartTextMessage]

frameworks/base/telephony/java/android/telephony/SmsManager : sendMultipartTextMessage

[sendTextMessage -> ISms iccISms = ISms.Stub.asInterface(ServiceManager.getService(PhoneFactory.getServiceName("isms", mPhoneId)));

iccISms.sendText]

frameworks/base/telephony/java/com/android/internal/telephony/IccSmsInterfaceManager : sendText

[mDispatcher.sendText]

frameworks/base/telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher : sendText

[sendSubmitPdu -> sendRawPdu]

frameworks/base/telephony/java/com/android/internal/telephony/SMSDispatcher : sendRawPdu

D/SMS_TRACE( 1360): SmsReceiverService handleMessage intent.getAction = com.android.mms.transaction.MESSAGE_SENT

D/SMS_TRACE(  498): ComposeMessageActivity confirmSendMessageIfNeeded 912
D/SMS_TRACE(  498): ComposeMessageActivity sendMessage
D/SMS_TRACE(  498): WorkingMessage send
D/SMS_TRACE(  498): WorkingMessage send run
D/SMS_TRACE(  498): WorkingMessage preSendSmsWorker
D/SMS_TRACE(  498): ComposeMessageActivity onPreMessageSent
D/SMS_TRACE(  498): ComposeMessage resetMessage
D/SMS_TRACE(  498): SmsMessageSender sendMessage
D/SMS_TRACE(  498): SmsReceiverService handleMessage intent.getAction = com.android.mms.transaction.SEND_MESSAGE
D/SMS_TRACE(  498): SmsSingleRecipientSender sendMessage
D/SMS_TRACE(  498): SmsManager sendTextMessage
D/SMS_TRACE(  348): IccSmsInterfaceManager sendText
D/SMS_TRACE(  348): CdmaSMSDispatcher sendText
D/SMS_TRACE(  348): CdmaSMSDispatcher sendSubmitPdu
D/SMS_TRACE(  348): SMSDispatcher sendRawPdu
D/SMS_TRACE(  348): SMSDispatcher sendRawPdu SINGLE_PART_SMS
D/SMS_TRACE(  348): RIL sendCdmaSms
D/SMS_TRACE(  498): SmsReceiverService handleMessage intent.getAction = com.android.mms.transaction.MESSAGE_SENT

 

原文地址:https://www.cnblogs.com/jimwind/p/2855222.html