ユーザーがアプリを起動したときにデバイスをロックするジェイルブレイク用のアプリを作成しています。試しGSEventLockDevice();
ましGraphicsServices.framework
たが、画面がロックされても電源が切れないため、正しく動作しません。なしで画面をロックする別の方法はありますMobileSubstrate
か?
2 に答える
別の方法として、を使用するこの回答を確認してくださいSBDimScreen()
。これをと組み合わせて 使用できますGSEventLockDevice()
。
この呼び出しを正常に使用するには、(iOS 5以降)アプリに資格を追加する必要があるようです。これまでに行ったことがない場合は、その方法の例を次に示します。明らかに、この場合、問題の資格をに変更する必要がありますcom.apple.backboard.client
。
また、@ VictorRoninが私がリンクした質問にコメントしたときに、これを実験したかどうかを確認することもできます。SBDimScreen()
ジェイルブレイクされたiOS4.2.1デバイスでテストしましたが、現在、新しいデバイスではこのテストを実行できません。後でiOS5.xで試して、アップデートを投稿します。
注:エリアスからリンクした回答には、iOS6とはまったく異なる呼び出しがあります。
これらのいくつかの質問を見てください:
デバイスをジェイルブレイクせずにiOSでシステムワイドタッチイベントをシミュレートする
タッチイベントをiPhoneOSに送信するにはどうすればよいですか?
アイデアは、システム全体のイベントをシミュレートできるということです。イベントの1つは、電源切断イベントです。シミュレートすると、デバイスの電源がオフになり、ロックされます。
ところで。シミュレーションの鍵となるGSEventについてもっとググってみてください。
ここにいくつかの便利なリンクがあります:
http://iphonedevwiki.net/index.php/GSEvent
http://networkpx.blogspot.com/2009/08/gsevent-recording-and-playback-in-30.html
また、このアプローチはジェイルブレイクされた電話に限定されません。投獄された電話でも機能します(ただし、AppStoreに投稿することはできません)。