2010-10-04 19 views
6

que tiene código para capturar un clip de vídeo en Android:duración máxima de captura de vídeo en android

Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE); 
intent.putExtra("android.intent.extra.durationLimit", 30000); 
intent.putExtra("EXTRA_VIDEO_QUALITY", 0); 
startActivityForResult(intent, ActivityRequests.REQUEST_TAKE_VIDEO); 

Este código funciona bien en la API 2.2, pero el límite de duración no funciona en API 2.1 (Galaxy S) . ¿Hay alguna constante o parámetro para establecer este tiempo, o hay un enfoque mejor que el que estoy tomando?

Pregunto porque encontré otra aplicación que funciona en el Galaxy S (llamada Vibrant) que puede grabar video por un corto período de tiempo.

+1

Bueno, lo que puedo decir, en Android 1.6, no hay constante MediaStore.EXTRA_DURATION_LIMIT como en 2.2. Entonces debería haber otra solución y luego usar este extra. –

+0

Tengo este problema en Android 2.2.1 Droid. –

+0

Recibí un error en ActivityRequests? –

Respuesta

3

android.intent.extra.durationLimit se introdujo en API Nivel 8, por lo que no está disponible en Eclair y anteriormente, desafortunadamente. Algunos fabricantes de dispositivos pueden tener una forma patentada de establecer la duración máxima en dispositivos más antiguos, lo que explica por qué lo ha visto funcionar en algunas aplicaciones anteriores a Froyo.

+0

@dmtribdv, puede ver el nivel de API en el que se introduce cada variable mirando hacia el lado derecho de la barra gris en el sitio de recursos de Android. Por ejemplo, vea esta variable (y su nivel de API) aquí: http://developer.android.com/reference/android/provider/MediaStore.html#EXTRA_DURATION_LIMIT – Phil

+0

Sí, puedo ver los niveles de API allí y estoy usando esto para 2.2.1 que se atiene a API 8 aunque –

0

Para su información, no se ejecuta en dispositivos HTC. Bienvenido al mundo de Android.

Cuestiones relacionadas