应用程序崩溃时的android静态变量行为

标签 android crash static-variables

在我的应用程序中,我有登录 Activity 。它有一个静态变量用户名,它将分配给用户输入的用户名值。 Loginactivity 启动 Activity A,A 启动 B。在 A 中,我使用变量 Loginactivity.username。

现在由于 B 中的一些错误,应用程序崩溃了。当我按下强制关闭时,应用程序重新启动, Activity A 是当前 Activity 。在 Activity A 中,我使用静态变量 Loginactivity.username。我看到崩溃后这个变量得到它的初始值,它是空字符串 "";

为什么会这样?你能解释一下这种行为吗?那么当应用程序崩溃时,堆栈中的所有 Activity 都重新启动了吗?我看到没有调用 Loginactivity 的 oncreate。那么静态变量值是如何改变的呢?

最佳答案

是的,当应用程序崩溃时,此应用程序的 jvm 会重新启动,您的类会重新加载,并且您会丢失所有静态变量和实例变量。

解决方案是消除崩溃原因。 :)

关于应用程序崩溃时的android静态变量行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9971527/

相关文章:

c - 静态变量的初始化

java - 如何在 Main 方法中声明静态变量?

java - 将全局静态变量声明为 null 是一个好习惯吗?

android - 从过滤器 rxjava 返回容器对象

java - 自定义三星健康应用程序问题?

iphone - CALayer 崩溃、内存问题

iphone - Xcode 4.1崩溃后突然出现奇怪的编译行为

javascript - 创建自定义事件,如 ionicPlatform.ready() 或 document.ready()

android - 在我的 Google map 中心创建十字准线

c++ - 跨平台崩溃处理程序