2

我需要实现一个在 iPhone 上接收或发送短信时检测事件的应用程序。不需要阅读短信。

我的应用程序将使用苹果的 voip 和导航器后台多任务功能在后台运行。

我可以使用私有 api,因为我的客户在 appstore 上不需要这个应用程序。

谢谢。

4

3 回答 3

5

在不越狱设备的情况下,绝对可以检测到何时接收或发送短信,但我相信您只能访问短信的电话号码,而不是实际的短信文本。

您需要链接 CoreTelephony 私有 api,然后向 CTTelephonyCenterAddObserver 注册事件观察器。有关示例,请参见http://tech.ruimaninfo.com/?p=83 。我已经确认这适用于 iOS4、5 和 6。

于 2013-05-01T15:36:21.483 回答
1

我自己从来没有做过,所以我不确定这是否可能。

但是,如果您愿意加倍努力。

我建议你看看几个地方(拆开它们,看看它们是如何工作的):

  • /System/Library/Frameworks/PrivateFrameworks/ChatKit.framework
  • /System/Libray/Messages/PlugIns/SMS.imservice
  • /System/Library/BulletinBoardPlugins/SMSBBPlugin
  • /System/Library/CoreServices/Springboard.app
  • /System/Library/PrivateFrameworks/IMFoundation.framework
于 2012-12-19T17:32:02.403 回答
0

不,没有任何此类 API 可以在未越狱的 iPhone 上获取短信发送/接收通知。Verizon 等一些服务提供 API,但此类 API 仅适用于 Verizon 网络。在越狱的 iPhone 上,您可以访问内部 SQLITE 数据库。

于 2012-12-18T12:58:12.963 回答