2

我想在 iOS 6 中实现“请勿打扰”功能。

第一个问题:是否有任何框架或api苹果暴露来通过代码控制它们?

经过大量谷歌搜索后,我在应用商店“Call Bliss”上找到了一个应用程序,它提供了此功能并完全控制了通话、短信和彩信。谁能解释这个应用程序是如何工作的?或任何其他解决方法来学习和在 iOS 中实现此功能?

提前致谢...

4

3 回答 3

2

通过阅读 Call Bliss 的描述,它的工作原理实际上听起来很简单。

1) 请勿打扰必须始终启用。不是预定的,不是关闭的,而是始终开启的。

2)它需要您将例外的联系人组设置为“请勿打扰”为“幸福例外”。这意味着应用程序需要访问您的通讯录。

从那里开始,假设它根据您在应用程序中设置的任何参数来管理“Bliss Exceptions”联系人组中的联系人可能是明智的。它根据所述参数添加和删除该组中的人员。

所以要回答你的问题,不,没有框架可以做到这一点。他们这样做的方式可能是目前唯一没有用于管理请勿打扰状态的公共 API 的方式。

于 2013-03-21T06:51:31.840 回答
1

甚至没有公共 API 可以访问请勿打扰功能。

我认为这就是应用程序的作用:

  1. 该应用程序创建和管理自己的联系人列表(称为 Bliss 例外)

  2. 用户必须在请勿打扰首选项中选择它。

  3. 该应用程序可以在后台运行,因为它使用位置跟踪(可能仅对节省电池寿命很重要),因此当用户更改位置时,它可以更新例外列表。

  4. 当接到电话时,请勿打扰系统功能会检查 Bliss 例外列表并将来自列表中联系人的所有呼叫静音。

请注意,评论者抱怨缺乏基于时间的呼叫阻止。这是不可能的,因为应用程序只能在位置更改时执行代码。

于 2013-03-21T06:51:06.800 回答
0

据我所知,没有办法通过代码实现它。没有提供用于限制调用的公共 api。

但是有一个用于检测调用的 API:CTCallCenter和一个名为CoreTelephonyFramework的框架

于 2013-03-21T06:26:44.950 回答