首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >app测试中的力破坏

app测试中的力破坏
EN

Stack Overflow用户
提问于 2014-02-16 16:33:10
回答 1查看 574关注 0票数 1

我想我需要一些帮助来理解Bundles是如何在Destroy上处理的。我的应用程序有一个问题,当一个bundle在一夜之间或超过几个小时关闭时,它变成了null。但是我不能为了调试的目的复制它。无论我做什么,在假定的强制破坏等之后,包裹仍然完好无损。

为了复制这个问题,我尝试了两种不同的方法:

  1. 使用开发人员选项下的选项IIRC - Settings>Developer Options > Don't Keep activities
  2. 使用eclipse下的“停止”按钮。

这两种方法似乎都没有删除Bundle。我是不是漏掉了什么东西,在一次所谓的完全毁灭之后,包裹是如何被保留下来的?

我用的是Nexus 5,android 4.4.2

我的“首选项”class中有一个检查,它首先检查Bundle变量是否可以从逻辑上的前一个/父级Activity中获得,如果不是从AndroidSharedPreferences读取的话。问题是,当我检查包不是null时,我必须有一个问题。因此,我需要调试它,因为它允许将空值从包设置到“会话”ID的

我是不是遗漏了什么?当然,捆绑包应该随着我的应用程序一起销毁,但是当使用上面的选项1)时,绑定仍然存在,所以我无法调试我的IF语句。选项2)没有用,因为停止按钮似乎只是关闭活动-我的应用程序退一步通过屏幕的层次结构,我点击停止。同样,没有从内存中销毁整个应用程序。我一定是错过了一些最基本的东西!

为任何帮助干杯。

顺便说一句,我已经找到了所有的解决方案,所以我可以,所有的一切似乎只是使用上面的光学没有问题,是不是有什么不同的与我的Android操作系统/手机?

编辑:谷歌的这篇文章展示了我需要的功能,但我认为这是一篇过时的文章,它指的是我在选项1中尝试的内容?-参见“立即销毁活动”- developer.android.com/tools/debugging/debugging-devtools.html

Edit2:参见下面的评论,我错误地认为上面的Google指的是从内存中删除整个应用程序,而不仅仅是一个活动。无论如何,现在我将尝试这样的方法来检查包的值

代码语言:javascript
复制
Long val = bundle.getLong(Navigator.INTENT_KEY_CHANNEL_ID, 0);
if (val != 0 && val != null) {
}
EN

回答 1

Stack Overflow用户

发布于 2015-12-15 11:19:57

1-启动应用程序

2-按下家庭按钮

3-在Android或Eclipse中启动DDMS

4-选择应用程序并单击“停止”。

5-选择你的应用程序启动的应用历史

谢谢,

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21814045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档