1
9
如果您认为错误在框架本身,那么获取源代码并进行挖掘 http://source.android.com/ http://developer.android.com/guide/developing/tools/ddms.html 通过adb转储状态( http://developer.android.com/guide/developing/tools/adb.html )它还将为您提供设备上正在发生的事情的完整快照,但您很难获得错误发生时的确切点。
如果你真的把内核当作内核,那么你就不再是真正的安卓系统了,而是Linux世界,但我认为你不需要走那么远。 如果你在使用一个特定的Android应用程序时遇到了问题(这个应用程序是开源的,不是你自己的),恐怕你就走运了。 对于MediaPlayer部分,Eclair的文件位于 https://android.googlesource.com/platform/frameworks/base/+/eclair-release/media/java/android/media/MediaPlayer.java ,但找不到放在那里的特定错误消息。 |
2
2
这并不是直接回答你的问题,但这些信息可能对你有用。 因此,根据您的-1004错误代码,您在尝试流式传输时出现了I/O错误。至于-2147483648的错误代码,帮不了你多少。您必须查看媒体播放器的所有日志输出,以了解为什么会得到这些代码,因为它没有定义。我从解码器对视频编码的干扰中看到的。
媒体错误基数=-1000,
|
3
2
在实际硬件上运行C/C++用户代码。 它提供了所有“常用”选项,如断点、回溯、查看/设置变量、跟踪点。 预建eabi gdb和DDD或其他前端。Eclipse应该可以。 |
4
2
-1004意味着
-2147483648可能是
正如你在书中看到的
例如,如果connect()返回错误代码-110,您将知道这是因为超时,因为它被定义为:
|
5
1
尽管Android确实支持远程GDB会话,但这可能不适用于内核端代码。你最好的办法是使用 JTAG 可用于执行停止模式调试的连接。由于停止模式调试有效地停止了CPU的执行,您可能会发现这会导致看门狗计时器出现问题。
|
6
1
你可以用几种不同的方法来做。首先,您需要找出要调试的服务是在Java框架服务(如system\u server)中,还是在纯本机应用程序(如surfaceflinger)中。 如果是纯本机服务,请检查 Debugging android platform native applications 文章。 如果服务是在system\ server进程中托管的Java代码,请检查 Debugging Android Java framework services 如果要调试的代码是Java服务通过JNI隐式加载的本机库,请检查 Debugging Android framework native libraries |
7
0
|
SRobertJames · 使用printf的gdb显示 1 年前 |
Subin · 在vscode中运行c时出错 1 年前 |
Community wiki · 如何调试Python内存故障? 1 年前 |
Kai · 有什么方法可以轻松优化VSCode中的锈迹? 2 年前 |
Chris Brandon · 如何使节点在堆栈溢出时中断? 2 年前 |