2

我知道这个问题已经问了很长时间了。我阅读了 stackoverflow 上的所有主题。但是我的问题没有令人满意的答案。

我想以编程方式将运行 iOS 5 的 iPhone 静音。许多人会说公共框架是不可能的。我对此很清楚。我打算编写的应用程序仅供个人使用。我不打算通过 AppStore 出售它(还没有?)。

我的研究让我得出结论,我有几种方法可以通过编程实现 iPhone 静音。

  1. 使用私有框架
  2. 钩住正在播放声音的函数或方法
  3. 替换默认声音(如铃声、MailSent、iMessage、usw...)

对上述方法的一些想法:

  1. 我对私有框架的所有标头进行了类转储(在我的 Xcode-Installation 中),但没有找到(通过其函数名称)指示所需行为的函数
  2. 我认为这是可能的,但我不知道要挂钩的功能。因此,要完成这项工作需要付出相当大的努力(我想我不想这样做)
  3. 再考虑一下,这可能不是一个好的解决方案。也许你可以改变声音。但是电话根本没有静音(游戏,YouTube,...)

我有AVSystemController机会使用这些方法changeActiveCategoryVolumeBysetVolumeTo但这些方法不会使我的手机静音,而是将铃声的最小音量设置为 0.06(或其他值)。

必须有一种方法可以让 iPhone 完全静音,RingToggle(越狱应用程序)做得很好。

有谁知道怎么做?

4

1 回答 1

2

我认为您无法通过沙盒应用程序将手机静音,即使使用私有框架也是如此。

RingToggle 做的大概就是钩入跳板,使用跳板的方法让手机静音;他们可能正在使用 MobileSubstrate 扩展。

于 2012-02-14T21:10:10.833 回答