我正在尝试为 Android 开发一个应用程序,但我很难追踪在此过程中遇到的每个异常的来源和原因。
我的代码在 Activity 中运行,如果我的一行引发异常,那么它不会停在该行并突出显示它,而是将我扔到 ActivityThread 类的代码中,显然我没有,所以我只是得到一个“未找到源”屏幕。
试图找到这样麻烦的一行是非常令人沮丧的,所以我试图找到一种方法来防止 Android 的代码在开发过程中捕获每个异常。
我在网上搜索没有提供有关如何执行此操作的信息,因此我决定在这里询问。
这是我的代码中抛出异常之前的堆栈跟踪:
线程 [ main](已挂起
(GameView 中第 72 行的断点))
GameView.showMenu() 行:72
GameView.init() 行:59
游戏视图。(上下文,
属性集)行:51
构造函数.constructNative(Object[],
Class, Class[], int, boolean) 行:
不可用[本机方法]
构造函数.newInstance(对象...)
线路:415
PhoneLayoutInflater(LayoutInflater).createView(String,
字符串,属性集)行:505
PhoneLayoutInflater(LayoutInflater).createViewFromTag(String,
属性集)行:570
PhoneLayoutInflater(LayoutInflater).rInflate(XmlPullParser,
视图、属性集)行:623
PhoneLayoutInflater(LayoutInflater).inflate(XmlPullParser,
ViewGroup,布尔值)行:408
PhoneLayoutInflater(LayoutInflater).inflate(int,
ViewGroup,布尔值)行:320
PhoneLayoutInflater(LayoutInflater).inflate(int,
ViewGroup)行:276
PhoneWindow.setContentView(int) 行:
207
MainActivity(Activity).setContentView(int)
线路:1657
MainActivity.onCreate(Bundle) 行:
20
Instrumentation.callActivityOnCreate(活动,
捆绑)行:1047
ActivityThread.performLaunchActivity(ActivityThread$ActivityClientRecord,
意向)线路:1586
ActivityThread.handleLaunchActivity(ActivityThread$ActivityClientRecord,
意向)线路:1638
ActivityThread.access$1500(ActivityThread,
ActivityThread$ActivityClientRecord,
意图)行:117
ActivityThread$H.handleMessage(消息)
线路:928
ActivityThread$H(处理程序).dispatchMessage(消息)
行:99 Looper.loop() 行:123
ActivityThread.main(String[]) 行:
第3647章
对象[]、类、类[]、类、int、
布尔)行:不可用 [native
方法] Method.invoke(对象,
对象...)行:507
ZygoteInit$MethodAndArgsCaller.run()
行:839 ZygoteInit.main(字符串[])
行:597 NativeStart.main(字符串[])
行:不可用[本机方法]
这是 Eclipse 由于异常而停止执行后的堆栈跟踪:
线程 [ main](已挂起
(运行时异常))
ActivityThread.performLaunchActivity(ActivityThread$ActivityClientRecord,
意向)线路:1622
ActivityThread.handleLaunchActivity(ActivityThread$ActivityClientRecord,
意向)线路:1638
ActivityThread.access$1500(ActivityThread,
ActivityThread$ActivityClientRecord,
意图)行:117
ActivityThread$H.handleMessage(消息)
线路:928
ActivityThread$H(处理程序).dispatchMessage(消息)
行:99 Looper.loop() 行:123
ActivityThread.main(String[]) 行:
第3647章
对象[]、类、类[]、类、int、
布尔)行:不可用 [native
方法] Method.invoke(对象,
对象...)行:507
ZygoteInit$MethodAndArgsCaller.run()
行:839 ZygoteInit.main(字符串[])
行:597 NativeStart.main(字符串[])
行:不可用[本机方法]
任何帮助将不胜感激。
当调试器像这样中断时,只需继续执行即可(可能您需要执行 2 或 3 次)。然后查看 LogCat 输出以获取有意义的堆栈跟踪。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)