以编程方式切换iOS中的AirPlane模式



我想在iOS中以编程方式打开/关闭飞机模式。在谷歌上搜索后,我得到了以下一些链接,并关注了它们,

可达性飞机模式(3G)与Wifi

使用专用框架:导入RadioPreferences.h

检测iPhone是否处于飞行模式?

以上所有链接,请告诉我使用AppSupport.framework和RadiosPreferences.h。这给了我关于airPlane模式是打开还是关闭的状态,但这并不能让我改变飞机模式。

然后我看到了这个链接,如何使用私人API在IOS5.1中打开/关闭飞机模式,这给了我切换飞机模式的方法,但它使用的是授权,这只适用于越狱设备。有没有办法通过程序设置飞行模式(可以使用私有API,但不能使用授权)。

每一个App Store应用程序都有权限沙盒。

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

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

如果您不关心AppStore提交,并且您的设备已越狱(iOS 7.0.4之前的版本都是可越狱的),那么您可以按照以下步骤以编程方式打开或关闭飞行模式。我还附上了一个示例项目,让事情变得更容易。

  1. 下载(https://iosopendev.googlecode.com/files/iOSOpenDev-1.6-2.pkg)并安装。这将安装必要的工具,以便在苹果应用程序所在的地方直接安装应用程序。这是必要的,以便您有适当的访问权限。

  2. 使用Cydia在您的设备中安装OpenSSH。然后按照本教程操作:(http://www.priyaontech.com/2012/01/ssh-into-your-jailbroken-idevice-without-a-password/)以启用无密码访问(使用SSH密钥)。

  3. 从这里下载我创建的示例项目:(https://www.dropbox.com/s/c0i76vmtfckvsut/ToggleAirplane.zip)该项目使用与苹果公司SpringBoard应用程序(控制主屏幕的应用程序)相同的权限。因此,您可以访问每一个设置。你只需要知道如何用程序来调用它。

  4. 在构建设置中,转到"用户定义"部分,并将密钥iOSOpenDevDevice的值编辑为设备的IP地址。

  5. 现在最棒的部分。按Command+Shift+I。这将安装并重新命名您的设备。

  6. 但是,您可能看不到该应用程序。要查看它,请从Cydia下载Respling应用程序。当你启动它时,它会重新启动设备。您应该能够在主屏幕上看到应用程序"切换飞机"。

注意:你将无法从主屏幕上删除它,就像你无法使用苹果的应用程序一样。要删除它,您需要转到Cydia->软件包。对应用程序进行微调并卸载。

最新更新