5

アプリの実行中に、別のアプリがiPhone/iPadのカメラを使用していることを検出する必要があります。私のアプリはバックグラウンド(オーディオ)で実行され続けますが、カメラ自体を使用しません。別のアプリがカメラを使用しているかどうかを確認する必要があります。

さらに、バッテリーの使用量を最小限に抑えるために、CPUリソースをできるだけ少なくしたいと考えています。

私は成功せずに試しました:

  • 中断通知をキャッチするための簡単な実行AVCaptureSession(通知されることはありません)
  • lockForConfigurationすべてAVCaptureDeviceのsを呼び出す
  • enabledのプロパティを定期的に監視しますAVCaptureInputPort(常にYESです)
  • connectedのプロパティを定期的に監視しますAVCaptureDevice(常にYESです)

明確にするために:

  • カメラの存在を検出する方法は必要ありません
  • アプリでカメラがアクティブかどうかを確認する方法は必要ありません

ポインタをありがとう。

編集:これはセキュリティ機能です:アプリがアクティブ(バックグラウンド)で使用されているときに、悪意のある(フォアグラウンド)アプリがユーザーまたは周囲の写真やビデオを撮影している可能性がわずかにある場合は、ユーザーに警告したいと思います。

4

1 に答える 1

3

iOSのドキュメントには、別のアプリがカメラを実行したときにアプリに通知する方法については何も記載されていません。これは、Appleがこれまでに許可したことのようにも聞こえません。さらに、別のアプリがカメラを実行しているかどうかを知ることは、次の理由で役に立ちません。a)アプリがアクティブでない場合、カメラを使用できず、b)アプリが別のアプリの動作に影響を与えることはありません。残念ながら、この方法は不可能であるため、達成しようとしていることの代替案を考えてみてください。

于 2012-05-29T14:36:23.017 に答える