15

在查看了 iPhone SDK 文档之后,我还没有找到一种编写应用程序的方法,以便它可以在 iPhone 平台内以编程方式处理传入 SMS 消息的内容。这个想法是让这样的应用程序在后台运行,并且基于特定格式的 SMS 消息将能够采取特定的操作。

有人知道这是否可以通过 iPhone SDK 应用程序实现,如果可以,请提供有关如何完成此操作的信息的指针?

4

5 回答 5

18

遗憾的是,您无法使用 iPhone SDK 拦截或收到通知接收的 SMS 消息。

一种可能的替代方法是注册一个自定义 URL 方案,当具有该方案的 url 嵌入到 sms 消息中并且用户点击它时,该方案启动您的应用程序。

要设置自定义 url 方案,您必须在应用程序的 info.plist 中实现 CFBundleURLSchemes 和 CFBundleURLName 键。

在您的应用程序的委托中,您可以实现 application:handleOpenURL: 方法以获取从 SMS 消息中的 url 传递给您的应用程序的任何参数。

于 2008-12-23T01:46:19.857 回答
4

我相信目前 SDK 不允许后台应用程序(苹果除外)。

于 2008-12-23T01:44:38.843 回答
1

BREW 和 J2ME 有(并且可能仍然有)通过特殊格式的 SMS 启动您的应用程序的方法,这可能是 Jeff 所指的。

Apple 确实有即将推出的 Push Server,它允许您向用户发送警报,让他们选择启动您的应用程序,但您不能为他们启动您的应用程序。

于 2008-12-23T09:59:36.427 回答
0

不幸的是,仅仅注册一个 URL 方案根本没有帮助你,因为 SMS 应用程序使“http://”url 只能点击......

于 2009-04-14T11:06:18.950 回答
0

您可以使用 CoreTelephony 框架。但您必须使用一些私有 api。我有一些演示代码。https://github.com/edison0951/AppNotifyBySMSDemo

于 2014-07-11T08:47:06.983 回答