gpt4 book ai didi

java - 当我尝试从 Activity 类调用函数时崩溃

转载 作者:行者123 更新时间:2023-11-30 03:09:33 26 4
gpt4 key购买 nike

好的,所以我遇到了一个非常奇怪的情况。我正在尝试在我的应用程序中设置广告,但还没有奏效,我也不完全确定原因。我一直遇到这个错误。我正在从另一个有点断开连接的类中的 Activity 中调用一个函数,但我确实有一个引用。我收到此日志错误。请注意,我已将对我的广告的所有实际调用都取出来,我实际上是在调用一个空函数。

01-19 07:32:54.440: E/AndroidRuntime(13651): FATAL EXCEPTION: Thread-49013
01-19 07:32:54.440: E/AndroidRuntime(13651): java.lang.IllegalStateException: setAdListener must be called on the main UI thread.
01-19 07:32:54.440: E/AndroidRuntime(13651): at azy.b(SourceFile:174)
01-19 07:32:54.440: E/AndroidRuntime(13651): at xq.a(SourceFile:511)
01-19 07:32:54.440: E/AndroidRuntime(13651): at ya.onTransact(SourceFile:105)
01-19 07:32:54.440: E/AndroidRuntime(13651): at android.os.Binder.transact(Binder.java:326)
01-19 07:32:54.440: E/AndroidRuntime(13651): at com.google.android.gms.internal.ac$a$a.a(Unknown Source)
01-19 07:32:54.440: E/AndroidRuntime(13651): at com.google.android.gms.ads.InterstitialAd.c(Unknown Source)
01-19 07:32:54.440: E/AndroidRuntime(13651): at com.google.android.gms.ads.InterstitialAd.loadAd(Unknown Source)
01-19 07:32:54.440: E/AndroidRuntime(13651): at net.timepieceent.Pong.DroidPongActivity.loadAndDisplayAd(DroidPongActivity.java:65)
01-19 07:32:54.440: E/AndroidRuntime(13651): at net.timepieceent.Pong.MainMenu.stateChange(MainMenu.java:363)
01-19 07:32:54.440: E/AndroidRuntime(13651): at net.timepieceent.Pong.MainMenu.buttonCheck(MainMenu.java:219)
01-19 07:32:54.440: E/AndroidRuntime(13651): at net.timepieceent.Pong.MainMenu.update(MainMenu.java:151)
01-19 07:32:54.440: E/AndroidRuntime(13651): at com.badlogic.framework.AndroidFastRenderView.run(AndroidFastRenderView.java:48)
01-19 07:32:54.440: E/AndroidRuntime(13651): at java.lang.Thread.run(Thread.java:856)

有谁知道我为什么会收到此错误?我觉得这实际上是我遇到的问题,而不是广告。请帮忙。非常感谢您。

编辑:我什至已经删除了 google play 服务库,但我仍然收到此错误。我不明白为什么它会说任何有关 setAdListener 的内容,因为我根本没有调用它。

编辑:毫无疑问,我的程序出现了故障。我已经删除了整个 DroidPongActivity,这样应用程序就不会运行,但它仍然在做完全相同的事情。这很奇怪。

编辑:谢谢大家。我在修复项目后应用了 Runonuithread 解决方案。 Eclipse 没有安装新的代码更改,所以我将项目复制到另一个文件夹,在 Eclipse 中将其删除并重新导入。之后一切都很好。

我想结束这个讨论,但我不知道该怎么做。

最佳答案

无论你在做什么,错误都是说它应该在 UI 线程上完成。

runOnUiThread(new Runnable() {
@Override
public void run() {

// your code here

}
});

错误是您 Activity 的第 65 行。将它(可能还有类似的代码)移到 run() 方法中。

关于java - 当我尝试从 Activity 类调用函数时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21216898/

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