ホーム画面でデバイスパスコードが有効になっていることを検出する方法があるかどうかを知りたい(Appstoreで承認する必要がある)かどうかを知りたい。ホーム画面からパスコードロック状態を検出する
基本的に、私のアプリは、これらの携帯電話のイベントを知りたいのですが:
- デバイス画面のターン
- オン/オフ電話のロック/アンロック(オートロックの設定/電源ボタンを押しによって)
- をパスコードのアクティブ限り、私は研究として
を(でパスコードの設定が必要)、Iは1 & 2を組み合わせることによって達成できます4つのイベントと& notify_get_state
:
com.apple.springboard.lockstate
com.apple.springboard.lockcomplete
com.apple.springboard.hasBlankedScreen
com.apple.iokit.hid.displayStatus
私が手の問題は、これらのイベントだけでなく、状態パスコードの状態をロック/アンロックを教えています。 5分後にパスコードが必要な場合は、最初の4分でパスコードなしで電話機をロック/ロック解除できます。
また、SBGetScreenLockStatus(port, &locked, &passcode)
を使用して、ロック状態&のパスコード状態を取得する方法もあります。 しかし、それは個人的なフレームワークを使用しているので、アップルによって拒否されるでしょう。
このトピックから(Programatically Checking if a Passcode Lock is Set)電話でパスコードが設定されている場合にのみ表示されます。
UPDATE:パスコードが有効になったときに戻ってくるイベントがあります。 com.apple.mobile.keybagd.lock_status
ですが、それに関するドキュメントは見つかりません。そして、私がnotify_get_state
を使用しても値は変わりません。
正確に。なぜ私は公開APIでそれを達成するためにとにかくあるのか調べているのです。しかし、今のところ結果はありません。 – nahung89
@ nahung89私は、WiFi、Bluetooth、その他のネットワークAPIを調べることをお勧めします。彼らはあなたがデバイスがオフになったことを検出するためにチェックすることができるいくつかの外部性を持っている可能性があります。たぶん彼らは別のモードかそのようなものに切り替えるでしょう。 –