gpt4 book ai didi

java - Android SDK 无法正确编译应用程序

转载 作者:行者123 更新时间:2023-12-01 15:58:25 25 4
gpt4 key购买 nike

Android SDK 似乎无法正确编译我的 Android 应用程序。构建应用程序后,我有时会遇到看似随机的异常。如果我注释掉有问题的代码,重建,取消注释代码,然后再次重建,错误就会消失。

例如,这段代码给了我一个 NullPointerException:

playButton.setOnClickListener(new OnClickListener() { 公共(public)无效onClick(查看v){ startActivityForResult(设置, PLAY_GAME); } });

这段代码没有任何错误!然而 adb logcat 告诉我这是异常的原因。注释掉这段代码,重新构建,取消注释并重新构建,错误就会消失。

这是怎么回事?

这使得 Android 开发特别令人沮丧。

更新:正如我之前指出的,这些看似随机的错误在我取消注释/重新编译/注释/重新编译后就会消失。所以我无法重现堆栈跟踪。如果我没记错的话,那是一个 NullPointerException。

但是,如果确实是有错误的编程,为什么应用程序现在运行良好,没有任何错误?

每当我对应用程序进行重大更改(添加新资源、新类、函数等)时,运行良好的旧代码就会中断。为什么?

更新:说真的,伙计们,停止仇恨吧。我感觉就像是无意中发现了一场无神论者与基督教徒的辩论。抱歉,我透露了 Android 的问题。使用最新错误开始一个新问题:

App Ran Fine, Now Breaking for Seemingly Unknown Reasons

最佳答案

Commenting out this code, rebuilding, uncommenting and rebuilding, makes the error go away.

在您看来,这可能像是 Android 中的一个错误,但我怀疑真正的问题是您的代码中与线程/同步相关的错误。例如,playButton 可能在初始化之前就已被使用。

但是,除非您向我们展示堆栈跟踪并识别引发异常的代码行,否则我们无法真正帮助您。

<小时/>

However, if it is indeed buggy programming, why is the app running fine now w/o ANY errors at all?

参见上文:这很可能是因为您遇到了线程/同步问题。您需要注意,具有 GUI 的应用程序的不同部分将在不同的线程中运行……即使您没有显式创建这些线程。有一些规则你必须遵守。如果你不遵守这些规则,就会发生不好的事情……就像有时会发生有时不会发生的异常,具体取决于风向。

关于java - Android SDK 无法正确编译应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4542777/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com