Cámara Android: requiere cámara frontal o posterior
Mi aplicación necesita una cámara para funcionar. Sin embargo, no importa si se trata de una cámara trasera o frontal.
Ahora mismo, tengo esto en mi Manifiesto:
- Android Market - los únicos informes de fallos que obtengo están en las plataformas "OTHER"
- Versión mínima de Android al publicar en el mercado
- No se puede actualizar la aplicación en la tienda debido a la api23 de destino (no es posible la degradación)
- ¿Cómo determinar si el usuario cancela la suscripción de Google Play?
- La actualización de la aplicación pierde todos los datos como ruta Código / Resouce para los cambios de pkg
<uses-feature android:name="android.hardware.camera"/>
Para requerir una cámara frontal, sé que también podría agregar esto:
<uses-feature android:name="android.hardware.camera.front"/>
Pero me gustaría apoyar todos los dispositivos que tiene cámara Either. ¿Hay alguna manera de hacer esto?
Por ejemplo, quiero apoyar Nexus 7 que tiene sólo una cámara frontal. Pero también quiero apoyar los dispositivos con cámara trasera solamente.
De acuerdo con algunas investigaciones he hecho, tales como:
Http://code.google.com/p/android/issues/detail?id=35166
Parece que esto no es posible.
Creo que una manera de resolver esto sería hacer 2 APKs separados, uno con android.hardware.camera y otro con android.hardware.camera.front y subirlo a Google Play, usando su soporte múltiple de APK . Todavía no lo he probado.
¿Alguien ha encontrado una forma recomendada de soportar todos los dispositivos con una cámara frontal, una cámara trasera o ambas, pero no dispositivos sin cámaras?
- ¿Es posible instalar una aplicación a través de adb pero aún así obtener actualizaciones de Google Market?
- ¿Qué es una política de licencia razonable con Android Market Licensing?
- Cómo solicitar información de la aplicación de Google Play Store sin autenticación
- La base instalada de Android disminuyó significativamente en un lapso de 2 días. ¿Cómo averiguar qué pasó?
- Hacer que el proveedor de ubicación fusionado LocationClient sea más fácil de usar
- Diferencias de tamaño de archivo de aplicación en Android e iOS
- Aplicaciones de Android, sideloading y mantenerlas actualizadas a través de Google Play
- La aplicación es incompatible con todos tus dispositivos
Varios pensamientos (sin respuesta definitiva):
A) Creo que tiene razón de que en la actualidad no hay una buena manera de exigir a cualquiera de las cámaras en APK.
B) Si lo desea, puede eliminar los usos-función y comprobar una cámara en tiempo de ejecución. Esto empeorará la experiencia del usuario, pero funcionará.
C) Puedes usar el uso required = "false" (http://developer.android.com/guide/topics/manifest/uses-feature-element.html). Ojalá, Google Market priorice las aplicaciones que utilizan esta bandera.
C) Nota lateral. Como sé la mayoría de los dispositivos Android tienen una cámara. Por lo tanto, si usted va con la solución b) o c) sólo muy pequeña base de usuarios se dará cuenta de la diferencia
Esto ha cambiado desde que fue contestada, ahora puede agregar la función uses-feature
al manifiesto que requiere una cámara como esta:
<uses-feature android:name="android.hardware.camera.any" android:required="true" />
Sólo para añadir mis 2 centavos a esta discusión:
He logrado el mismo resultado que @Cat descrito en un comentario a Juan Cortés.
La forma en que probé esto fue usando aapt (instrucciones sobre las pruebas que se encuentran en http://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions-features ), y buscando cámara explícita o implícita Requisitos:
No se <uses-feature>
indicador <uses-feature>
, pero que requiere permiso de la camera
: Observe los uses-implied-feature
Usando sólo <uses-feature android:name="android.hardware.camera.any" android:required="false" />
: Todavía implica que la aplicación SIEMPRE necesita una cámara.
Ambos <uses-feature android:name="android.hardware.camera.any" android:required="false" /><uses-feature android:name="android.hardware.camera" android:required="false" />
Definido: No más características implícitas.
Espero que esto ayude a alguien perfil su propia aplicación.
- Programación de socket Android sin conexión WIFI
- Fragmento y ciclo de vida de la actividad de los padres juntos