J'essaie de prendre une photo sans aperçu, immédiatement lorsque mon application commence à exécuter et après cela pour enregistrer l'image dans le nouveau dossier - "Pictures123", dans le dossier racine.
Est-ce que quelqu'un pourrait me dire ce qui ne va pas dans mon code? Autorisations: P> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
3 Réponses :
Je pense que le principal problème est que vous appelez immédiatement après StartPreview qui prend du temps pour terminer sa configuration. Ajout d'un retard entre ces deux pourrait résoudre temporairement ce problème, Regarder ici pour Plus de détails . p>
Avec caméra.sepreviewDisplay (null) code>, aucun délai ne vous aidera ( Eh bien, il existe des appareils qui permettent de telles ricks i>). Notez également que retarder i> ne peut pas être un simple
Sleep () code> appel ici et là. L'initialisation du flux d'appareil photo implique certains rappels et nécessite une réponse rapide à celles-ci. Par exemple. On ne peut pas utiliser la superficie avant que le
superficiel code> a appelé
surfacecreated () code> sur son auditeur.
Il est impossible de prendre une photo sans aperçu. Vous devriez lire la référence en ligne Android: http://developer.android.com /reference/andrroid/hardware/camera.html#takepicture . P>
note: Cette méthode n'est valide que lorsque l'aperçu est actif (après StartPreview ()). L'aperçu sera arrêté après la prise de l'image; Les appelants doivent appeler StartPreview () à nouveau s'ils veulent recommencer l'aperçu ou prendre plus de photos. Cela ne doit pas être appelé entre le début () et l'arrêt (). P>
Êtes-vous sûr qu'il est impossible de prendre une photo sans aperçu? Je connais une application qui fait cela - "gottana!". Cette application prend une photo si quelqu'un a essayé de déverrouiller l'appareil avec un mot de passe incorrect.
Je pense que cela vient de cacher l'aperçu. Par exemple, vous pouvez ajouter une vue personnalisée via la supervision.
Vous ne pouvez pas prendre une photo sans aperçu, mais vous n'avez pas à afficher l'aperçu à l'écran. Vous pouvez diriger la sortie sur une surfacetexture à la place (API 11 +). P>
voir Cette réponse Pour plus de détails. p>
Duplicaté possible de Comment prendre Photos de la caméra sans aperçu lorsque mon application commence?