我编写了一个Android应用程序,即使在终止后,仍会运行一个侦听手机状态转换的服务。这样,应用程序就能够检测到新的电话并触发某个事件,例如对话伙伴的号码存储在数据库中。
现在我也渴望在iOS上实现这个应用程序,但我无法弄清楚是否有可能以类似的方式收听电话。至于目前为止我所知道的关于iOS的所有知识,无论何时我的应用程序被用户或操作系统终止,都不可能再检测到新的电话。
我有什么方法可以实现这一目标,还是我已经走到了死胡同?
编辑:据说它过于宽泛:
我想随时检测来电和去电。有没有办法在iOS 10上做到这一点?我不想要代码,我只是想知道它是否可能。
答案 0 :(得分:0)
请进一步调查Apple正在使用的App Sandbox原则。
简而言之:
App Sandbox基于一些简单的原则通过限制 App Sandbox提供了基于每个应用程序访问敏感资源的权限 防止盗窃,腐败或删除的最后一道防线 用户数据,或者攻击者劫持系统硬件 成功利用您应用中的安全漏洞。例如,a 沙盒应用必须明确说明其使用任何一个的意图 以下资源使用权利:
硬件(相机,麦克风,USB,打印机)网络连接 (入站或出站)应用程序数据(日历,位置,联系人)用户 文件(下载,图片,音乐,电影,用户选择的文件)访问 到项目定义中未明确请求的任何资源是 在运行时被系统拒绝。如果您正在编写草图应用程序, 例如,你知道你的应用永远不需要访问 麦克风,你只是不要求访问,系统知道 拒绝您的(可能已被入侵)应用程序使用它的任何尝试。
另一方面,沙盒应用可以访问特定的 您请求的资源,允许用户通过扩展沙箱 以通常的方式执行典型的操作(例如拖放), 并可以自动执行许多其他被认为安全的操作, 包括:
从“服务”菜单调用服务阅读大多数世界可读 系统文件打开用户选择的文件App的元素 沙箱是权利,容器目录,由用户决定 权限,权限分离和内核实施。工作 这些可以防止应用程序访问更多系统 完成工作是必要的。