gpt4 book ai didi

使用 super.onDestroy 时 Android MapActivity 崩溃

转载 作者:行者123 更新时间:2023-11-30 03:58:31 25 4
gpt4 key购买 nike

我有一个到目前为止非常稳定的应用程序,我决定向它添加一个 MapView。如果有所不同,则 MapView 位于 Horizo​​ntalScrollView 中。我将主要 Activity 转换为扩展 MapActivity 并添加了 isRouteDisplayed() 函数。我可以编译并运行它,滚动查看我的 MapView 是否正确加载。

我的问题是 super.onDestroy() 何时被调用。由于某种原因,程序崩溃了。

日志:

10-17 18:32:17.109: E/AndroidRuntime(5477): Caused by: java.lang.NullPointerException 10-17 18:32:17.109: E/AndroidRuntime(5477): at com.google.android.maps.MapActivity.onDestroy(MapActivity.java:500) 10-17 18:32:17.109: E/AndroidRuntime(5477): at com.appsmith.mapit.MainActivity.onDestroy(MainActivity.java:177) 10-17 18:32:17.109: E/AndroidRuntime(5477): at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:2663) 10-17 18:32:17.109: E/AndroidRuntime(5477): ... 11 more

 @Override
public void onDestroy()
{
internalSave();
writeOutLookupTable("Unit");
gpsManager.removeUpdates(myListener);
super.onDestroy(); //MainActivity.java Line 177
finish();
}

如果有任何解决此问题的建议,我们将不胜感激。

编辑:知道了!我实现了一个 onPause() ,它与我的 onDestroy() 具有相同的信息(这是我的解决方案,可以在应用程序未使用时防止 GPS 处于 Activity 状态)。注释掉 onPause() 使一切再次愉快。感谢您的帮助!

最佳答案

你不需要调用 finish();在 onDestroy()、finish() 内部,如文档所述:“当您的 Activity 完成并且应该关闭时调用它。”,因此如果您在 onDestroy() 中,那么您的 Activity 已经完成

还有 super.onDestroy();通常放在 onDestroy() 的顶部。

关于使用 super.onDestroy 时 Android MapActivity 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12945550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com