以编程方式在iOS中切换飞机模式

以编程方式在iOS中切换飞机模式,ios,iphone,frameworks,iphone-privateapi,airplane,Ios,Iphone,Frameworks,Iphone Privateapi,Airplane,我想以编程方式打开/关闭iOS中的飞行模式。在谷歌搜索之后,我得到了以下一些链接,并进行了跟踪 以上所有链接,请告诉我如何使用AppSupport.framework和radiopreferences.h。 这是给我关于飞机模式是开还是关的状态,但它不会让我改变飞机模式 然后我看到了这个链接,它给了我切换飞行模式的方法,但它使用的是授权,它只适用于越狱设备。有没有办法通过编程设置飞行模式(可以使用私人API,但不能使用授权)。每个应用商店应用都有授权沙盒 如果你想在应用商店中发布你的应用程

我想以编程方式打开/关闭iOS中的飞行模式。在谷歌搜索之后,我得到了以下一些链接,并进行了跟踪

以上所有链接,请告诉我如何使用AppSupport.framework和radiopreferences.h。 这是给我关于飞机模式是开还是关的状态,但它不会让我改变飞机模式


然后我看到了这个链接,它给了我切换飞行模式的方法,但它使用的是授权,它只适用于越狱设备。有没有办法通过编程设置飞行模式(可以使用私人API,但不能使用授权)。

每个应用商店应用都有授权沙盒

如果你想在应用商店中发布你的应用程序,那么你想要实现的目标是不可能的。你的应用程序根本无法获得足够的权限来实现任何远程类似的功能。不能设置更改系统行为的全局设置。苹果永远不会允许这样


在最好的情况下,您可以通过可达性监控网络连接的状态,但这几乎就是它。使用私有API=直接拒绝应用程序。

如果您不关心AppStore的提交,并且如果您的设备被越狱(iOS 7.0.4之前都可以越狱),那么您可以按照这些步骤以编程方式打开或关闭飞行模式。我还附上一个样本项目,使事情更容易

  • 下载()并安装。这将安装必要的工具,以便在苹果应用程序所在的位置直接安装应用程序。这是必需的,以便您有适当的访问权限

  • 使用Cydia在设备中安装OpenSSH。然后按照本教程:()启用无密码访问(使用SSH密钥)

  • 下载我在这里创建的示例项目:()此项目使用与苹果的SpringBoard应用程序(控制主屏幕的应用程序)相同的权限。因此,您可以访问每个设置。您只需要知道如何以编程方式调用它

  • 在生成设置中,转到“用户定义”部分,编辑设备IP地址的关键iOSOpenDevDevice的值

  • 现在是最棒的部分。按Command+Shift+I。这将安装并重新启动设备

  • 但是,您可能看不到该应用程序。要查看它,请从Cydia下载Restring应用程序。当您启动它时,它将重新启动设备。您应该能够在主屏幕上看到应用程序“ToggleAirplane”


  • 注意:你将无法从主屏幕上删除它,就像你无法使用苹果的应用程序一样。要删除它,您需要转到Cydia->Packages。完善应用程序并卸载。

    我认为您不太可能通过编程方式更改模式,因为在没有用户交互的情况下更改此模式是一种非常“非苹果”的工作方式,因为用户可能想知道为什么他的互联网或接听电话的能力突然停止工作。我只想制作一个应用程序,让我的设备在一段时间内自动进入飞行模式,例如,当我进入办公室/工作场所时,它会自动打开飞行模式,当我离开办公室时,它会自动关闭……我认为你能达到的最好效果是,显示一个通知,引导用户(例如,按下按钮)进入飞机设置,然后用户仍然需要手动更改设置。显然,你可以使用Siri打开飞机设置屏幕:耶,这是最后一种方法,如果我没有得到这个答案…检查这个答案,因为我已经提到我想使用私有API,这显然意味着我不想把它放在App store上,所以没有拒绝的必要。我看了这段视频,视频中有一个人说该应用程序可以打开/关闭飞行模式,他正在使用IOS:。这是假的还是什么?我不想使用动态库,我已经知道这种方法,并且已经做过了,但正如我在问题(最后一行)中明确提到的,我不想使用越狱解决方案,我可以使用私有框架我知道这是一个古老的答案,但我想知道您是否可以重新上传ToggleAirplane示例项目。谢谢请不要在这里回答问题,除非在你的帖子中提供答案的关键要素。您提供了一个解决方案,该解决方案链接到一个Dropbox项目,该项目在此链接上已不存在。这使得这个答案毫无用处。