안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요. 방갑습니다.
재가 지금 카메라가 지원하는 해상도를 얻어오는 작업을 하고있거든요.
근데 기존 갤A , S , TAKE등에서는 잘 얻어오는데
갤2나 TAB에서는 getSupportedPreviewSizes(); 를 얻어오지 못하더라구요.
왜 에러가 나는지 도저히 못찾겠습니다.
한번만 봐주세요.
에러코드
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): FATAL EXCEPTION: main
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): java.lang.NullPointerException
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at kr.co.mnkc.android.blackbox.activity.Preview.setVideoResolution(Main.java:3018)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at kr.co.mnkc.android.blackbox.activity.Main.onClick(Main.java:1013)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.view.View.performClick(View.java:2538)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.view.View$PerformClick.run(View.java:9152)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.os.Handler.handleCallback(Handler.java:587)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.os.Handler.dispatchMessage(Handler.java:92)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.os.Looper.loop(Looper.java:123)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.app.ActivityThread.main(ActivityThread.java:3691)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at java.lang.reflect.Method.invokeNative(Native Method)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at java.lang.reflect.Method.invoke(Method.java:507)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at dalvik.system.NativeStart.main(Native Method)
06-23 15:03:59.035: WARN/ActivityManager(2988): Force finishing activity kr.co.mnkc.android.blackbox/.activity.Main
06-23 15:03:59.040: ERROR/(2988): Dumpstate > /data/log/dumpstate_app_error
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): java.lang.NullPointerException
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at kr.co.mnkc.android.blackbox.activity.Preview.setVideoResolution(Main.java:3018)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at kr.co.mnkc.android.blackbox.activity.Main.onClick(Main.java:1013)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.view.View.performClick(View.java:2538)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.view.View$PerformClick.run(View.java:9152)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.os.Handler.handleCallback(Handler.java:587)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.os.Handler.dispatchMessage(Handler.java:92)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.os.Looper.loop(Looper.java:123)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at android.app.ActivityThread.main(ActivityThread.java:3691)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at java.lang.reflect.Method.invokeNative(Native Method)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at java.lang.reflect.Method.invoke(Method.java:507)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
06-23 15:03:59.015: ERROR/AndroidRuntime(2417): at dalvik.system.NativeStart.main(Native Method)
06-23 15:03:59.035: WARN/ActivityManager(2988): Force finishing activity kr.co.mnkc.android.blackbox/.activity.Main
06-23 15:03:59.040: ERROR/(2988): Dumpstate > /data/log/dumpstate_app_error
코드
public void setVideoResolution() {
Log.i("setVideoResolution", "setVideoResolution()");
if (sizeArrayWidth != null) {
Log.i("setVideoResolution", "sizeArrayWidth != null");
sizeArrayWidth.clear();
sizeArrayWidth = null;
}
Log.i("setVideoResolution", "setVideoResolution()");
if (sizeArrayWidth != null) {
Log.i("setVideoResolution", "sizeArrayWidth != null");
sizeArrayWidth.clear();
sizeArrayWidth = null;
}
if (sizeArrayHeight != null) {
Log.i("setVideoResolution", "sizeArrayHeight != null");
sizeArrayHeight.clear();
sizeArrayHeight = null;
}
Log.i("setVideoResolution", "sizeArrayHeight != null");
sizeArrayHeight.clear();
sizeArrayHeight = null;
}
Camera.Parameters params = mCamera.getParameters();
if(mCamera != null){
Log.d( TAG, "mCamera is not null" );
}
List<Size> sizeList = params.getSupportedPreviewSizes();
sizeArrayWidth = new ArrayList<Integer>();
sizeArrayHeight = new ArrayList<Integer>();
for (int i = 0; i < sizeList.size(); i++) {
Size size = sizeList.get(i);
sizeArrayWidth.add(size.width);
sizeArrayHeight.add(size.height);
size = null;
}
}