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

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

最佳答案

首先,您需要将代码注入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.framework中找到。位于 private “MessageUI.framework”中的MFComposeRecipient

关于ios - iOS-拦截传出的SMS消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16842445/

10-14 23:44
查看更多