为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

隔江千里 2019-10-19 14:15:49
在我的应用程序中,有一个静态变量,当我从外部浏览器返回到我的应用程序时,该变量被设置为null。如果我启动的外部网页足够复杂,似乎该应用程序或应用程序的某些部分将被杀死。如果应用程序被完全杀死,然后从可以进行的主要活动中重新启动,但是重新启动是从启动浏览器的活动中进行的-但这并不意味着要设置应用程序状态,因此在访问null静态变量时会崩溃。这对我来说是六分之一的设备问题,因此我需要一些建议。是否有设置标志来防止此行为?
查看完整描述

3 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

通常,这会在设备进入睡眠模式时发生

可以通过以下步骤模拟设备的这种行为:

  1. 运行应用程序,然后按“主页”按钮

  2. 在左下角的Android Studio中,选择已调试的应用程序,然后按应用程序名称左侧的X按钮(终止应用程序)。(不知道如何使用Eclipse,但我认为类似)

  3. 点击应用程序图标在设备上

如果“任务”为活动,则该应用程序将在上一次活动时打开,并且(很可能)将生成错误,因为所有静态变量均已保留


查看完整回答
反对 回复 2019-10-19
?
莫回无

TA贡献1865条经验 获得超7个赞

在Android中使用static(单身)的解决方案非常简单:

实现一个扩展类android.app.Application并在其中进行所有单例初始化onCreate()

推理:

  • 即使您的应用程序的进程由于内存不足而被终止,扩展应用程序的类也会首先执行

  • 只要调用Application.onCreate(),您的应用程序便具有上下文


查看完整回答
反对 回复 2019-10-19
  • 3 回答
  • 0 关注
  • 490 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信