2012-05-29 16 views
5

Devo rilevare quando un'altra app utilizza la fotocamera dell'iPhone/iPad mentre è in esecuzione la mia app. La mia app continua a funzionare in background (audio), ma non utilizza la fotocamera stessa. Devo solo scoprire se un'altra app sta utilizzando qualsiasi telecamera.Rilevamento dell'uso attivo della telecamera

Inoltre, voglio utilizzare il minor numero possibile di risorse della CPU per ridurre al minimo l'utilizzo della batteria.

ho provato senza successo:

  • l'esecuzione di un semplice AVCaptureSession per la cattura di notifiche di interruzione (non è mai notificato)
  • chiamata lockForConfiguration su tutti AVCaptureDevice s
  • monitorare periodicamente la proprietà enabled di AVCaptureInputPort (è sempre SÌ)
  • monitorare periodicamente la proprietà connected di AVCaptureDevice (è sempre s SI)

Per chiarimenti:

  • Non ho bisogno di un modo per rilevare l'esistenza di fotocamera (s)
  • Non ho bisogno di un modo per scoprire se la fotocamera è attiva in la mia app

Grazie per qualsiasi suggerimento.

MODIFICA: questa è una funzione di sicurezza: voglio avvisare l'utente se c'è una leggera possibilità che un'app dannosa (in primo piano) stia scattando una foto o un video dell'utente o dell'ambiente mentre la mia app è attiva (sfondo) uso.

risposta

3

La documentazione di iOS non dice nulla su un modo in cui l'app può essere notificata quando un'altra app esegue la fotocamera. Ciò non sembra qualcosa che Apple avrebbe mai permesso neanche. Inoltre, non sarebbe utile sapere se un'altra app sta utilizzando la fotocamera perché: a) la tua app non può utilizzare la videocamera se non è attiva, e b) la tua app non può influenzare in alcun modo il funzionamento di un'altra app. Prova a pensare a un'alternativa a quello che stai cercando di ottenere, perché purtroppo, in questo modo è impossibile.

+0

grazie mille. Si noti che si ottengono tali notifiche per il dispositivo audio iOS. E non ho necessariamente bisogno di una notifica, per me è OK effettuare il polling ogni X secondi. Quindi un metodo "isCameraActive" sarebbe sufficiente. E credimi, semplicemente sapendo/farò/fare del bene alla mia app. – Florian

+0

Anche con il polling, non penso sia possibile. Puoi spiegare perché è necessario sapere se la telecamera è attiva? Forse c'è una soluzione. – woz

+0

Ho aggiunto alcune informazioni per la mia motivazione per questa funzione – Florian

Problemi correlati