问题标签 [android-strictmode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
644 浏览

android - 在 AsyncTask 上设置 Bugsense 处理程序会导致违反严格模式

我设置了严格模式,然后设置了 Bugsense 处理程序。这导致违反 StrictMode 策略。

为什么会发生这种情况有什么合乎逻辑的解释吗?我怎样才能摆脱它?

我的应用程序.java:

堆栈:

0 投票
1 回答
114 浏览

java - 提高 Atom/RSS 阅读器的速度和可靠性

我最近从“ Atom Reader 阅读困难”的问题中做了。现在,我正在考虑我制作的博客应用程序的最大兼容性,从 Android Froyo 到 Jellybean。问题是我在使用StrictMode检查时收到错误通知。我正在通过Windows 7操作系统运行 Eclipse IDE。

如果我将最低 SDK 版本设置为 7 会发生以下情况,您会看到错误出现在红线中:

在此处输入图像描述

如果我通过 Android Manifest 将最低 SDK 版本设置为 11,会发生以下情况:

在此处输入图像描述

此外,当我使用AsyncTask运行它时,它会变得更慢、更快或只是滞后。

当我在onCreate()作为主线程恢复并运行此xp.Get_Parse_Feed(URL_link, is, lm.headlines, lm.links);代码时,有时我们很快就会正确加载链接。问题是我应该管理哪一个以及如何使这个博客应用程序与 Android 2.1 及更高版本兼容?

0 投票
1 回答
3640 浏览

android - 如何在严格模式下知道违规

我正在向 Web 服务发送登录请求,并且我已启用严格模式并出现以下错误

如何获得此处违反的内容。

这是更新的代码。请建议我在哪里做错了

谢谢

0 投票
1 回答
2970 浏览

android - Android StrictMode 和堆转储

当 Android 的 StrictMode 检测到泄漏对象(例如活动)违规时,如果我能在那个时刻捕获堆转储将会很有帮助。但是,没有明显的方法可以将其配置为执行此操作。有谁知道一些可以用来实现它的技巧,例如,一种说服系统在调用死刑之前运行特定代码的方法?我认为 StrictMode 不会引发异常,因此我不能使用此处描述的技巧:Is there a way to have an Android process generate a heap dump on an OutOfMemoryError?

0 投票
1 回答
2528 浏览

android - Android严格模式检测到多个活动实例违规,但我不知道为什么

代码可能太复杂,无法在此处完整发布,但这里是基本架构:我有两个Activity子类,每个子类都承载一个ListView. 每个ListView都有一个自定义类的适配器,它View也生成自定义类的实例。这些列表显示了在另一个线程中异步生成的数据项;因为它需要知道将更新发送到哪里,所以它操作的数据对象有WeakReference<>设置为在初始化时保存对显示其内容的适配器的引用的对象。当第一个活动列表中的一个对象被选中时,我启动第二个活动的意图是指示它查找项目并显示其内容。然后我使用“返回”按钮关闭第二个活动并返回第一个活动。出于某种原因,当我在StrictMode启用检查的情况下运行它时,它总是在两个活动之间切换几次迭代后崩溃,抱怨我的一个类的实例太多Activity

我已经安排在崩溃之前编写一个堆转储(请参阅Android StrictMode 和堆转储)。这些堆转储始终显示在终止时堆上的两个活动中的每一个都有 1 个实例。首先,当我最近在两者之间切换时,这难道不是意料之中的吗?如果是这样,为什么要StrictMode抱怨这个?如果不是预期的,我该如何安排避免这种情况?检查堆转储,这两个对象都是从主线程堆栈中引用的,对此我似乎没有任何有用的控制程度。每个也有来自 的参考android.app.ActivityThread$ActivityClientRecord,我似乎也无法控制。

所以,基本上,有什么想法可以避免这种情况吗?这实际上是否代表活动泄漏,或者 StrictMode 只是过于敏感?

0 投票
0 回答
901 浏览

android - 更改方向时的 StrictMode$InstanceCountViolation

我有一个带有标签的活动,当我旋转设备时我遇到了问题。当我以纵向模式启动应用程序时,然后旋转到横向并再次旋转到纵向,然后应用程序崩溃并且在 LogCat 中我看到:

这是我的活动onCreate()方法:

片段类 - 这是扩展的空类SherlockFragment(我使用 ActionBarSherlock)。

这里是TabManager类:

我试图static从班级和final活动变量中删除,但没有帮助。

我认为当我旋转时,我的活动应该被销毁并重新创建,但可能有某个地方引用它并且不能被销毁。

有人可以帮助我吗?

编辑:我创建了一个空的 android 应用程序项目,其中只有一个活动和应用程序类,我在其中设置了严格模式,我得到了同样的错误。我将其用于严格模式:

0 投票
2 回答
1283 浏览

java - 尝试遵循基本的 How to connect Android with PHP, MySQL 教程:应用程序崩溃 - 无法导入 android.os.StrictMode

好的 - 所以我正在使用以下教程:“如何将 Android 与 PHP、MySQL 连接起来”

然而,几乎所有尝试本教程的人(从评论来看)都遇到了强制关闭问题,因为该应用程序仅设计为在 API 级别 8 或更早版本上运行。

一些用户已经为此开发了一个修复程序,包括在 EditProductActivity.java 文件中添加以下代码行

// 这部分仅用于确定工作代码的放置位置

// 注意 * 在 EditProductActivity.java 的导入部分插入下面的行 // import android.os.StrictMode;

// 现在代码可以避免 NetworkOnMainThreadException 错误

但是,我在 logcat 中收到消息,指出无法解析 StrictMode 并且无法将 StrictMode 解析为一种类型。我对此进行了一些研究,并且 StrictMode 包含在 API 级别 8 及更高级别中。考虑到这一点,我将 AndroidManifest.xml 中的 API 级别提高到:

然后清理了我的项目 - 但是我仍然得到 StrictMode 无法解析为类型错误。

日志猫:

爪哇:

0 投票
3 回答
2952 浏览

android - Android 严格模式

我已经使用AsyncTask. 我只是在中显示响应TextView。我不知道是对是错。它在 GingerBread 上工作并NetworkOnMainThreadException在 JellyBean 上展示。如果我使用StrictMode它,它会在 JellyBean 上工作并在 GingerBread 上强制关闭。如何编写支持Android 3.0 以上和Android 3.0 以下的代码。

}

0 投票
1 回答
5127 浏览

android - Android Java 应用程序中的实例计数违规

我正在开发一个 Android 应用程序。抽象地说,这个应用程序有一个 UI 来与用户交互,它还与远程服务交互。远程服务向 Android 启动栏添加通知,此通知允许重新显示 UI。应用程序和服务在同一个包中。服务通知功能代码:

注意:它是当前版本的方法...以前我也尝试过以下 FLAGS

应用程序清单包含以下配置:

注意:我也尝试了其他礼仪,但这些预计不会产生影响......

当应用程序启动但不再显示时,可以重新显示其使用启动栏通知或使用“应用程序列表”中的应用程序条目,但是当我执行以下场景时,UI 显示两次:

  1. 从列表启动应用程序
  2. 主页按钮上的胶带
  3. (重新)使用通知显示应用程序 ==> UI 正确重新显示
  4. 主页按钮上的胶带
  5. (重新)使用“应用程序列表”显示应用程序 ==> 显示一个新的 UI 实例

场景日志:

我阅读了很多关于应用程序、远程服务和通知的内容、提示等,但我无法理解为什么从列表中重新启动应用程序时会重新创建 UI,并且只有在以前,它是从通知中重新显示的......注意:如果 FLAG_ACTIVITY_NEW_TASK 标志未添加到意图,则会记录以下警告,并且不会更改观察到的行为...

我将不胜感激。

谢谢你。此致,

编辑:这是我的错,而不是“应用程序”清单字段,android:launchMode =“singleTop”属性应该在“活动”元素中:/

我搬家了,它有效

0 投票
2 回答
847 浏览

android - Android StrictMode 总是抱怨 FileReader

启用 StrictMode 时,它​​总是抱怨 FileReader 有 DiskReadViolation。无论我如何改进,它仍然存在。我怀疑它与 UIThread 滞后问题有关,请告诉我如何解决它,谢谢。


编辑:getCpuFreq() 被放入 asynctask,但 onpostexcute() 的位置错误。@rciovati,感谢您的提醒,请在答案中发表您的话,以便我接受。