Android activity 方向改变时不断崩溃
Android activity keeps crashing on orientation change
我在我的 Android 应用程序的一个活动中遇到了一个相当微妙且无法检测到的错误。在某些情况下,当我将 activity 从横向转换为纵向或反之时,应用程序崩溃。这个错误特别困难和烦人的是,当我进行转换时,activity 中的 none 断点在调试模式下被击中。另外,logcat好像也没什么用,也什么都没有。
所以我会寻找一些关于可能导致方向更改崩溃的建议。我可以 post 一些代码,但我显然不能 post 一切,我不确定 post 来自 [=17= 的一些片段会有多大帮助].
Activity
的生命周期是这样的,在方向改变时不会调用像 onCreate()
和 onStop()
(例如)这样的事件。因此,如果您在 onCreate()
中创建了对象,则当您在 Activity
returns 旋转后,它们可能不会被初始化 (=null
)。检查代码中可能在 onCreate()
中初始化的对象。
您可能还想再添加一些 try..catch
和 Log.e
条消息。
老实说,如果您的应用程序崩溃,logcat 中应该会记录错误。
我正处于放弃的边缘,在一次失败的测试后 Logcat 中出现了一些东西:
java.lang.NullPointerException: Attempt to invoke virtual method 'void
com.google.android.gms.maps.model.Marker.setIcon
(com.google.android.gms.maps.model.BitmapDescriptor)' on a null object reference
我跟踪堆栈跟踪到 activity 中发生空指针异常的位置。事实上,正如你们中的许多人在评论中所建议的那样,有些状态没有被正确恢复。确切的问题发生在 Google 映射的初始化中。
现在乍一看,这题好像是"why isn't this code working"类型的。然而,事实并非如此,因为调试和大部分时间 Logcat 都未能揭示问题所在。
温馨提示,如果您在 Android 代码中遇到错误,您不应该仅仅依靠调试,因为它可能不起作用。 Logcat好像是从这里走过来的,不过连每次好像都重现不了
我在我的 Android 应用程序的一个活动中遇到了一个相当微妙且无法检测到的错误。在某些情况下,当我将 activity 从横向转换为纵向或反之时,应用程序崩溃。这个错误特别困难和烦人的是,当我进行转换时,activity 中的 none 断点在调试模式下被击中。另外,logcat好像也没什么用,也什么都没有。
所以我会寻找一些关于可能导致方向更改崩溃的建议。我可以 post 一些代码,但我显然不能 post 一切,我不确定 post 来自 [=17= 的一些片段会有多大帮助].
Activity
的生命周期是这样的,在方向改变时不会调用像 onCreate()
和 onStop()
(例如)这样的事件。因此,如果您在 onCreate()
中创建了对象,则当您在 Activity
returns 旋转后,它们可能不会被初始化 (=null
)。检查代码中可能在 onCreate()
中初始化的对象。
您可能还想再添加一些 try..catch
和 Log.e
条消息。
老实说,如果您的应用程序崩溃,logcat 中应该会记录错误。
我正处于放弃的边缘,在一次失败的测试后 Logcat 中出现了一些东西:
java.lang.NullPointerException: Attempt to invoke virtual method 'void
com.google.android.gms.maps.model.Marker.setIcon
(com.google.android.gms.maps.model.BitmapDescriptor)' on a null object reference
我跟踪堆栈跟踪到 activity 中发生空指针异常的位置。事实上,正如你们中的许多人在评论中所建议的那样,有些状态没有被正确恢复。确切的问题发生在 Google 映射的初始化中。
现在乍一看,这题好像是"why isn't this code working"类型的。然而,事实并非如此,因为调试和大部分时间 Logcat 都未能揭示问题所在。
温馨提示,如果您在 Android 代码中遇到错误,您不应该仅仅依靠调试,因为它可能不起作用。 Logcat好像是从这里走过来的,不过连每次好像都重现不了