2010-06-01 13 views
6

Aparat Emulatora działał dobrze do robienia zdjęć w trybie 2.1 Eclair. To, co nie działało, to oczywiście nagrywanie filmów.
Uruchomienie aplikacji, która działa bezbłędnie w emulatorze 2.1, powoduje awarię aplikacji aparatu. Odpalam zamiar uruchomienia:Aparat emulatora wbudowany w buggy aplikacji w Froyo/2.2?

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(TEMP_PHOTO_FILE))); 
startActivityForResult(intent, REQUEST_CAMERA); 

Spowoduje to uruchomienie aplikacji aparatu, ale po kilku sekundach ulegnie awarii. Wyjście jest:

06-01 09:57:15.593: DEBUG/libEGL(5212): egl.cfg not found, using default config 
06-01 09:57:15.593: DEBUG/libEGL(5212): loaded /system/lib/egl/libGLES_android.so 
06-01 09:57:15.733: ERROR/AndroidRuntime(5212): FATAL EXCEPTION: GLThread 11 
06-01 09:57:15.733: ERROR/AndroidRuntime(5212): java.lang.IllegalArgumentException: No configs match configSpec 
06-01 09:57:15.733: ERROR/AndroidRuntime(5212):  at android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:760) 
06-01 09:57:15.733: ERROR/AndroidRuntime(5212):  at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:916) 
06-01 09:57:15.733: ERROR/AndroidRuntime(5212):  at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1246) 
06-01 09:57:15.733: ERROR/AndroidRuntime(5212):  at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1116) 

Właściwie chciałem tylko sprawdzić, czy błąd, który popełnił pojawić mały obraz z kamery, chociaż EXTRA_OUTPUT została określona została ustalona na Froyo. Niestety, nawet nie mogę tego przetestować.
Czy ktoś napotka podobne problemy?

Dzięki,
Steff

Odpowiedz

3

Wygląda istnieje mistmatch między EGLConfig Aparat jest zainteresowanie i EGLConfigs obecnie obsługiwana przez renderer s/w GL, które pochodzi z Froyo. Sprawdź, czy możesz poprosić o konfigurację EGL RGB565.

Co więcej, poniższe zmiany zadziałały u mnie. Zasadniczo usuwa on bufor szablonu z EGLConfig, ponieważ ta konfiguracja nie jest w ogóle obsługiwana w rendererze s/w GL w Froyo. Dodaj oryginalną konfigurację, jeśli testujesz na prawdziwych urządzeniach takich jak Droid.

różn --git A/src/pl/Android/kamera/UI/GLRootView.java b/src/pl/Android/kamera/UI/GLRootView.java
wskaźnik d8ae0f8..545c66a

--- a/src/com/android/camera/ui/GLRootView.java 
+++ b/src/com/android/camera/ui/GLRootView.java 
@@ -174,7 +174,8 @@ public class GLRootView extends GLSurfaceView 

    private void initialize() { 
     mFlags |= FLAG_INITIALIZED; 
-  setEGLConfigChooser(8, 8, 8, 8, 0, 4); 
+  setEGLConfigChooser(8, 8, 8, 8, 0, 0); 
     getHolder().setFormat(PixelFormat.TRANSLUCENT); 
     setZOrderOnTop(true); 
+0

dziękuję, zajrzę do tego, kiedy znajdę czas. – stfn

+0

Pracowałem dla mnie. Dzięki! –

+0

Gdzie znajdę to znalezisko? Gdzie znajduje się "a/src/..."? Nie można go znaleźć w folderze Eclipse, SDK lub Workspace. Linki do tego tematu i wiele innych osób, które nie mogą znaleźć tego pliku. –

Powiązane problemy