【问题标题】:Android: Camera Crash after taking landscape pictureAndroid:拍摄风景照片后相机崩溃
【发布时间】:2017-03-27 11:21:39
【问题描述】:

我正在开发一个仅在纵向模式下运行的 Android 应用。

在我的活动中,我有一个启动 CameraActivity 的按钮。

如果我以纵向模式拍照,一切正常,活动恢复,图片设置在ImageView

但是如果我在横向模式下拍照,我会得到一张横向图片(这没问题),但我会失去上下文并且应用程序崩溃(仅在 LG G4S 等少数设备上)。

据我所知,在此设备上,活动重新启动而不是恢复。有谁知道为什么这只发生在某些设备上?谁能给我一个解决这个问题的方法?

java.lang.RuntimeException:无法启动活动 组件信息{app.CustomFormScreenActivity}: java.lang.NullPointerException:尝试调用虚拟方法 空对象上的“java.lang.String app.CustomFormSurvey.getParentId()” 参考。

问题是,在此设备上拍照后,活动重新启动(而不是恢复)并且我丢失了 Bundle(这就是应用程序抛出 NullPointerException 的原因)。

【问题讨论】:

  • 展示您的 Logcat 以便更好地理解。
  • java.lang.RuntimeException:无法启动活动 ComponentInfo{app.CustomFormScreenActivity}:java.lang.NullPointerException:尝试调用虚拟方法“java.lang.String app.CustomFormSurvey.getParentId()”在空对象引用上。问题是在此设备上拍照后,活动重新启动(而不是恢复)并且我丢失了 Bundle(这就是应用程序抛出 NullPointerException 的原因)。
  • 你用的是原生相机吗?
  • 是的,我使用的是原生相机

标签: android android-camera android-orientation


【解决方案1】:

在你的清单文件中放:

android:configChanges="orientation|screenSize"

在您的活动标签下。 Activity 会在方向更改时重新创建,因此您需要手动处理它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多