Камера вылетает, если вызвано намерением

Моя персонализированная камера выходит из строя при вызове Intent, но если приложения запускаются непосредственно на камеру, это работает. Моя проблема в том, что, если камера не установлена ​​в качестве запуска и если вызывается через намерение, камера была показана, но она вылетит, если будет нажата кнопка захвата.

У меня два класса, 1-й startup screen и 2-й класс camera, Экран запуска является средством запуска, а класс камеры является значением по умолчанию в объявлении манифеста. Если я запускаю приложения, отображается экран запуска, и если пользователь нажимает кнопку "Начать камеру", он будет вызывать класс камеры через намерение, теперь, если я коснусь / нажму кнопку захвата, камера выйдет из строя и остановится.

Это мой код для вызова класса камеры;

public void startCamera(View paramView)
 {
   Intent stCam = new Intent(GPSInitialize.this, MainActivity.class);
   stCam.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 
   stCam.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
   startActivity(stCam);
   locationManager.removeUpdates((LocationListener) GPSInitialize.this);
   finish();
 }

Логкат:

05-12 00:17:25.368: E/AndroidRuntime(1563): java.lang.OutOfMemoryError
05-12 00:17:25.368: E/AndroidRuntime(1563):     at android.graphics.Bitmap.nativeCopy(Native Method)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at android.graphics.Bitmap.copy(Bitmap.java:555)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at com.joules.camera3100.MainActivity$3.onPictureTaken(MainActivity.java:443)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at android.hardware.Camera$EventHandler.handleMessage(Camera.java:917)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at android.os.Handler.dispatchMessage(Handler.java:102)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at android.os.Looper.loop(Looper.java:136)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at android.app.ActivityThread.main(ActivityThread.java:5017)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at java.lang.reflect.Method.invokeNative(Native Method)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at java.lang.reflect.Method.invoke(Method.java:515)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
05-12 00:17:25.368: E/AndroidRuntime(1563):     at dalvik.system.NativeStart.main(Native Method)

1 ответ

Здравствуйте, ваша проблема не в камере, а проблема с памятью. пожалуйста, проверьте свою внутреннюю память при захвате изображения, потому что нет памяти для хранения нового изображения. сначала проверьте доступность памяти, а затем захватите изображение.

Другие вопросы по тегам