나는 정확하게 물었는지 확신 할 수 없어이 질문을 다시 게시합니다. :) 얼굴 인식 기능이 포함 된 앱에서 작업하고 있습니다. . 카메라가 정상적으로 부팅됩니다. 미리보기 프레임 콜백 내에서 Faceview 객체를 인스턴스화합니다 (이 클래스는 감지를 처리합니다). 이 클래스는 비트 맵의 얼굴 만 감지 할 수 있지만 콜백의 이미지는 YuvImage입니다. 이미지를 jpeg로 압축 한 다음 해당 jpeg를 비트 맵으로 변환하는 메서드를 호출하므로 검색이 작동합니다.NoClassDefFoundError : android.graphics.YuvImage (컴파일했지만 실행되지 않음)
내가 가지고있는 문제는 일식이 내가 사용하고있는 YuvImage에 관한 classnotfoundexception이 있다고 말하는 것입니다. yuvimage가 포함되어있는 api8을 다운로드했습니다. 소스 코드에 오류가 없으며 컴파일됩니다. ealipse가 yuvimage 클래스를로드 할 수없는 이유가 있습니까? 여기에 스 니펫, 감사합니다.
'코드'
BitmapFactory.Options bfo = new BitmapFactory.Options();
bfo.inPreferredConfig = Bitmap.Config.RGB_565;
Rect rectangle = new Rect(0, 0, width, height);
ByteArrayOutputStream bos = new ByteArrayOutputStream(imageData.length);
try{
img = new YuvImage(imageData,ImageFormat.NV21,width,height,null);
}catch(Exception e){
e.printStackTrace();
}
img.compressToJpeg(rectangle, 100, bos);
byte[] array = bos.toByteArray();
sourceImage = BitmapFactory.decodeByteArray(array, 0, array.length);
예외 추적 :
02-10 11:53:07.298: ERROR/dalvikvm(2364): Could not find class 'android.graphics.YuvImage', referenced from method com.tecmark.FaceView.<init>
02-10 11:53:07.468: ERROR/AndroidRuntime(2364): Uncaught handler: thread main exiting due to uncaught exception
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): java.lang.NoClassDefFoundError: android.graphics.YuvImage
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at com.tecmark.FaceView.<init>(FaceView.java:60)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at com.tecmark.cameraView$1.onPreviewFrame(cameraView.java:111)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at android.hardware.Camera$EventHandler.handleMessage(Camera.java:395)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at android.os.Handler.dispatchMessage(Handler.java:99)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at android.os.Looper.loop(Looper.java:123)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at android.app.ActivityThread.main(ActivityThread.java:4363)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at java.lang.reflect.Method.invokeNative(Native Method)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at java.lang.reflect.Method.invoke(Method.java:521)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
02-10 11:53:07.473: ERROR/AndroidRuntime(2364): at dalvik.system.NativeStart.main(Native Method)
@kgiannakakis 덕분에, 내가 포럼에 새로운 아직 일을 포맷하는 방법을 잘 모르겠어요 :) 난 후 정보를 수정했습니다 – turtleboy
. 이것은 ClassNotFoundException * 예외가 아닌 NoClassDefFoundError * 런타임 오류 *입니다. –