Android 中如何防止异常捕获?

2023-12-06

我正在尝试为 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(使用前将#替换为@)

Android 中如何防止异常捕获? 的相关文章

随机推荐

  • Strapi v4 抛出 cors 异常

    我是 Strapi 的新手 我已经下载了 Strapi v4 并且我使用 vue js 作为前端 现在我创建了类别 并尝试使用我的 vue 应用程序获取这些类别 但出现了 cors 错误 Access to XMLHttpRequest a
  • 箭头函数语法不适用于 webpack?

    我正在react redux 上制作一个应用程序 我使用 webpack 进行捆绑 使用 babel 进行转译 当我尝试在代码中使用箭头函数时 它给我的错误是 Module build failed SyntaxError Unexpect
  • NoSuchBeanDefinitionException:没有可用的“org.springframework.security.config.annotation.web.builders.HttpSecurity”类型的合格 bean

    我正在尝试使用 Spring Boot 设置基本身份验证 但在启动时不断收到此错误 我见过几个例子 它们的代码几乎与我这里的代码完全相同 但我不知道我做错了什么 我从 Spring 的文档中复制了代码 只做了一些小的调整 我对 Spring
  • Target='_blank' 在新窗口中显示,而不是在新选项卡中显示,可能吗?

    我怎样才能做到这一点 在 Firefox 中 链接会在新选项卡中打开 我不希望用户必须为此设置浏览器的设置 我希望每当用户单击主页上的 联系 时都会出现一个带有联系表单的弹出窗口 我该怎么做 您无法控制这一点 这完全由用户代理自行决定 毕竟
  • 为什么 `finally: return` 不传播未处理的异常? [复制]

    这个问题在这里已经有答案了 为什么该函数不引发异常 显然是没被抓到 def f try raise Exception finally return ok print f ok 这在中明确解释了文档 如果任一子句发生异常且未处理 则暂时保存
  • CUDA - memcpy2d - 错误的音高

    我刚刚开始 CUDA 编程 并尝试执行下面所示的代码 这个想法是将一个二维数组复制到设备 计算所有元素的总和 然后检索总和 我知道这个算法不是并行的 事实上 它正在做更多的工作 然后是必要的 然而 这只是有意的作为内存复制的练习 inclu
  • 每页一个样式表! [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我有一个新设计的想法 但基本上 它是最后一个设计的扩展 版本 并且最后一个设计的 CSS 文件有 2096 行长 这是常见 正常吗 无论如何 我想这个新设计是非常独特的 因为我以前在其他地
  • 未检测到 SDL 按键事件

    我完全困惑为什么这段代码没有得到任何 SDL 按键事件 其他 SDL 事件 为清楚起见已删除 工作正常 它不适用于我的 XP 或 Vista 机器 没有编译 链接错误 只是从未收到 keydown 事件 include SDL SDL h
  • 为什么每次子程序调用时计数器变量都会意外增加? [复制]

    这个问题在这里已经有答案了 社论 我读过这个问题但是 虽然事后看来 它最终的相关性与这里每个问题的相关性相同 即 为什么计算机会出现故障 这个答案并不是我问题的答案 这个问题是问为什么标准机构在该语言中设计了特定功能 而且 答案并没有回答我
  • 将 org.w3c.dom.Document 漂亮地打印到标准输出的最短方法是什么?

    漂亮打印 也称为格式化 的最简单方法是什么org w3c dom Document到标准输出 Call printDocument doc System out 该方法如下所示 public static void printDocumen
  • 在 Android 应用程序上设置全局菜单

    复制 静态选项菜单 大家好 我知道如何在我的应用程序中创建一个菜单 并在菜单的每个 按钮 上添加图标和文本 但此菜单仅在我创建它的活动中可见 我想知道是否可以创建一个可从所有活动访问的全局菜单 谢谢 我想知道是否可以 创建一个全局菜单 可以
  • 使用 hibernate + spring mvc 获取自动生成的密钥,保存时

    我在用Spring MVC 休眠 Resource name sessionFactory private SessionFactory sessionFactory save public
  • 删除数组中重复的字符串

    我是 C 新手 我正在寻找一种从字符串数组中删除重复字符串的方法 如下所示 string exempleArray string1 string2 string1 代码之后应该如下所示 string1 string2 但顺序根本不重要 非常
  • 捕获“X-Frame-Options 禁止显示”[重复]

    这个问题在这里已经有答案了 我知道这个错误是无法克服的 但我想做的是 当我遇到无法嵌入的页面时 该页面只是作为弹出窗口加载 目前发生的情况是我被重定向到该页面 对于无法嵌入的页面 我在 Chrome 中看到以下错误 Refused to d
  • 在 JavaScript 中多次使用展开运算符?

    为什么扩展运算符不能多次使用 let arr 1 2 3 console log arr Array Array 1 console log arr Array Array 3 console log arr SyntaxError exp
  • 为什么我可以创建一个父类类型的变量

    当我上这些课时 public class Master public String test return I am the master object public String boeh return Only inside maste
  • ruby while 循环转换为 haskell

    我刚刚开始学习一些 Haskell 和函数式编程 但我发现很难掌握它 我正在尝试翻译一小段rubyHaskell 的代码 因为我喜欢函数式编程和 Haskell 提出的概念 更因为我来自数学领域 Haskell 看起来非常数学化 class
  • 在java中检索嵌套json中的所有键

    这是我写的程序 To change this template choose Tools Templates and open the template in the editor package javaapplication1 impo
  • iOS7中UISearchbar文本右对齐的方法

    你能告诉我如何在 iOS 7 中右对齐 UISearchbar 文本吗 我在iOS6中使用了这个 但现在它在iOS7中不起作用 hacking search bar UITextField searchField for UIView su
  • Android 中如何防止异常捕获?

    我正在尝试为 Android 开发一个应用程序 但我很难追踪在此过程中遇到的每个异常的来源和原因 我的代码在 Activity 中运行 如果我的一行引发异常 那么它不会停在该行并突出显示它 而是将我扔到 ActivityThread 类的代