iOS私有API:锁定设备并关闭屏幕电源

时间:2013-02-13 20:18:32

标签: ios jailbreak lockscreen tweak

我正在为越狱制作应用,以便在用户启动应用时锁定设备。我已尝试GSEventLockDevice(); GraphicsServices.framework,但这不能正常工作,因为它会锁定屏幕,但不会关闭屏幕电源。是否有其他方法可以在没有MobileSubstrate的情况下锁定屏幕?

2 个答案:

答案 0 :(得分:3)

正如使用SBDimScreen()的另一种选择check out this answer。您可以将 GSEventLockDevice()结合使用。

您现在可能(iOS 5+)需要向您的应用添加权利才能成功使用此呼叫。如果您之前没有这样做过,here is an example of how to do so。显然,在这种情况下,相关权利必须更改为com.apple.backboard.client

你也可能会看到@VictorRonin是否已经对此进行过实验,因为他评论了我所链接的问题。我在越狱的iOS 4.2.1设备上测试了SBDimScreen(),但我的新设备目前无法运行此测试。我稍后会在iOS 5.x上尝试并发布更新。

注意:我与Elias联系的答案为iOS 6提供了一个不同的电话。

答案 1 :(得分:2)

看看这几个问题:

Simulating System Wide Touch Events on iOS

Simulating System Wide Touch Events in iOS without jailbreaking the device

How to send a touch event to iPhone OS?

这个想法是你可以模拟系统范围的事件。其中一项活动是停电事件。如果您模拟它,它将关闭设备并锁定它。

顺便说一句。您可能有兴趣更多地了解GSEvent,这是模拟的关键。

以下是几个有用的链接:

http://iphonedevwiki.net/index.php/GSEvent

http://networkpx.blogspot.com/2009/08/gsevent-recording-and-playback-in-30.html

此外,这种方法不仅限于越狱手机。它也适用于被监禁的手机(但是,你无法将其发布到AppStore)。