按设计,iOS应用程序无法访问收到的短信。有很多关于类似主题的讨论。
限制的主要原因是隐私。没有公开记录的API可以接收短信时的回调。如果您尝试黑客攻击iOS并监听私有通知,则您的应用程序可能会被App Review团队拒绝。
在研究这个主题时,我发现了一些有趣的内容。你可以创建一个扩展程序来接收短信和呼叫事件,以用于垃圾邮件过滤的目的。这种类型的扩展称为苹果生态系统中的SMS和通话报告扩展。在查看此扩展的文档时,乍一看,如果我们可以向主机应用程序通知有关传入消息,就可以实现所要求的行为。但是,在浏览文档末尾时,我发现由于设计原因,该扩展具有一些附加限制:
无论如何,这都与文档有关,我还没有尝试过扩展上的任何内容。您可以尝试创建一个扩展程序,并查看其他可能的解决方案。
例子:
我脑海中的1个不好的解决方案是,您的扩展程序使用短信内容调用您的服务器,然后您的服务器将短信内容转发到静默推送通知有效负载中。当您的应用程序接收到静默通知时,它就能够填充字段。但是,这并不是扩展的预期目的。
在我看来,最好的方法是您已经实现的,即设置文本字段的内容类型。