返回应用程序时,静态变量为null

在我的应用程序中,有一个静态变量,当我从外部浏览器返回到我的应用程序时,该变量被设置为null。如果我启动的外部网页足够复杂,似乎该应用程序或应用程序的某些部分将被杀死。

如果应用程序被完全杀死,然后从可以进行的主要活动中重新启动,但是重新启动是从启动浏览器的活动中进行的-但这并不意味着要设置应用程序状态,因此在访问null静态变量时会崩溃。这对我来说是六分之一的设备问题,因此我需要一些建议。

是否有设置标志来防止此行为?


隔江千里
浏览 491回答 3
3回答

慕森卡

通常,这会在设备进入睡眠模式时发生。可以通过以下步骤模拟设备的这种行为:运行应用程序,然后按“主页”按钮在左下角的Android Studio中,选择已调试的应用程序,然后按应用程序名称左侧的X按钮(终止应用程序)。(不知道如何使用Eclipse,但我认为类似)点击应用程序图标在设备上。如果“任务”为活动,则该应用程序将在上一次活动时打开,并且(很可能)将生成错误,因为所有静态变量均已保留。

莫回无

在Android中使用static(单身)的解决方案非常简单:实现一个扩展类android.app.Application并在其中进行所有单例初始化onCreate()推理:即使您的应用程序的进程由于内存不足而被终止,扩展应用程序的类也会首先执行只要调用Application.onCreate(),您的应用程序便具有上下文
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android