Figure 10- 57 [CKMessageEntryView touchUpInsideSendButton:button]
It first calls [[self delegate] messageEntryViewSendButtonHit:self] then calls [self
updateEntryView]. As their names suggest, the latter method simply refreshes UI; so sending
action should come from the former one. Use Cycript to find out what’s [self delegate]:
cy# [#0x160c6180 delegate]
#"<CKTranscriptController: 0x15537200>"
Go to [CKTranscriptController messageEntryViewSendButtonHit:CKMessageEntryView]
in IDA. This is a pretty simple method, as shown in figure 10-58.
Figure 10- 58 [CKTranscriptController messageEntryViewSendButtonHit:CKMessageEntryView]
By overviewing this method, I bet you can easily locate the actual sending action in [self
sendComposition:[CKMessageEntryView compositionWithAcceptedAutocorrection]]. Let’s see
what’s [self compositionWithAcceptedAutocorrection] in Cycript:
cy# [#0x160c6180 compositionWithAcceptedAutocorrection]