我的测试设备版本是 5.0.1 (Lollipop)。
我在 Android Studio 1.3 中获取了 Android 堆转储文件。
但是我看到了错误信息。
所以我尝试在 DDMS 中获取转储文件(示例文件名:android.hprof)。
然后我尝试将 Android HPROF 转换为标准 HPROF 文件。
hprof-conv android.hprof standard.hprof
然后 hprof-conv
返回消息 ERROR: read 40070 of 65559 bytes
有人帮我。
最佳答案
/*
* Read some data, adding it to the expanding buffer.
*
* This will ensure that the buffer has enough space to hold the new data
* (plus the previous contents).
*/
static int ebReadData(ExpandBuf* pBuf, FILE* in, size_t count, int eofExpected)
{
size_t actual;
assert(count > 0);
ebEnsureCapacity(pBuf, count);
actual = fread(pBuf->storage + pBuf->curLen, 1, count, in);
if (actual != count) {
if (eofExpected && feof(in) && !ferror(in)) {
/* return without reporting an error */
} else {
fprintf(stderr, "ERROR: read %d of %d bytes\n", actual, count);
return -1;
}
}
pBuf->curLen += count;
assert(pBuf->curLen <= pBuf->maxLen);
return 0;
}
关于android - 我无法在 Lollipop 上将 Android HPROF 转换为标准 HPROF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32409289/