1

是否可以在越狱的 iOS 6 设备上拦截传出的 SMS 消息?我想做的是通过免费服务重新路由 SMS 消息,但仍然“重用”整个 Messages.app UI。

我看过一些关于在 iOS 上拦截 SMS 的信息,但它们都在谈论传入消息,而不是传出消息。

4

1 回答 1

2

首先,您需要在 MobileSMS 应用程序中注入您的代码。

现在你可以-send:CKTranscriptController. 当您在 MobileSMS 中按下“发送”按钮时,将调用此方法。它的参数不包含任何关于发送消息的信息,所以我们需要手动找到它:

1) 文本和主题。CKTranscriptController有实例变量CKMessageEntryView *_entryView

CKContentEntryView *contentEntryView = [_entryView entryField];
CKMessageStandaloneComposition *composition = [contentEntryView messageComposition];
NSString* subject = [composition subject];
NSString* text = [composition textString];

2) 接受者。 CKTranscriptController有实例变量CKRecipientSelectionView *_recipientSelectionView。它的-recipients方法返回对象数组MFComposeRecipient。调用MFComposeRecipient实例方法-rawAddress获取地址字符串。

大多数课程都可以在 private 中找到ChatKit.frameworkMFComposeRecipient位于私有“MessageUI.framework”中。

于 2013-05-31T10:29:19.770 回答