安卓“无法记录二进制事件日志:溢出”

37

我有一个安卓应用程序,在我将设备更新到安卓4.4(奇巧巧)之前一直运行正常。现在我开始收到这个错误,并且程序的某些部分因为日志出现以下问题_

Android“无法记录到二进制事件日志:溢出”

请问有人知道发生了什么吗?


你解决了吗?显然它正在刷屏日志,因为某些东西不开心,但是你是否将其缩小到图形、声音或其他方面? - hack_on
3个回答

0

这可能有帮助,也可能没有,但我曾经遇到过同样的问题。我使用了Butterknife,但在@OnClick上没有声明id。设置后,它可以正常工作并完美记录。


0

我不知道你是否知道,但4.4存在一些问题。 要使其正常工作,您将需要将项目的目标SDK更改为4.4 KitKat,或者如果您尚未安装该版本,请进入Android管理器并获取适当的文件。 即使如此,您的应用程序仍然可能无法工作。如果无法正常工作,请将您的设备降级到Android 4.3或其他您的应用程序可以正常运行的版本。 希望这有所帮助!


0

提示:

在4.4.4 r1版本中

/frameworks/native/services/surfaceflinger/EventLog/EventLog.cpp

58void EventLog::TagBuffer::log() {
59    if (mOverflow) {
60        ALOGW("couldn't log to binary event log: overflow.");
...
67}

应该是这个问题

mOverflow = true 的情况: 例如:

116void EventLog::TagBuffer::writeString8(const String8& value) {
...
118    const int32_t stringLen = value.length();
119    const size_t needed = 1 + sizeof(int32_t) + stringLen;
120    if (mPos + needed > STORAGE_MAX_SIZE) {
121        mOverflow = true;
122        return;
...
128}

STORAGE_MAX_SIZE = 128 你的标签文本 > char[128]

我认为这是由于旧设备的硬件资源短缺所致

新系统通常需要更多的内存空间

也许是系统ROM的问题

或者尝试缩短您的标签长度。 或者可能不是您的应用程序错误日志


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接