gpt4 book ai didi

java - 无法实例化接收器 : class has no zero argument

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:57:26 25 4
gpt4 key购买 nike

虽然我知道已经有一些答案,但我不是很了解它们,因为我只是 Android 编程的初学者。我尝试使用以下代码实例化我的接收器:

<receiver
android:name="com.example.android.exampleapp.MainActivity$NetworkChangeReceiver"
android:enabled="true"
android:label="NetworkChangeReceiver">
<intent-filter>
<action android:name="android.net.wifi.STATE_CHANGE" />
</intent-filter>
</receiver>

但是没有用。 logcat 说:

java.lang.RuntimeException:
Unable to instantiate receiver com.example.android.exampleapp.MainActivity$NetworkChangeReceiver:
java.lang.InstantiationException:
class com.example.android.exampleapp.MainActivity$NetworkChangeReceiver has no zero argument constructor

我在 MainActivity.java 中的部分代码如下所示:

public class NetworkChangeReceiver extends BroadcastReceiver {
/* All my code that reacts when WiFi state changes are here */
}

我知道这个问题听起来很简单,但我真的不知道如何解决这个错误。我读过this (我认为这有点无效——我没有一个空的构造函数)和一堆其他在线教程,但我仍然无法理解。任何帮助将不胜感激:)

最佳答案

改变:

public class NetworkChangeReceiver extends BroadcastReceiver

到:

public static class NetworkChangeReceiver extends BroadcastReceiver

或者,将 NetworkChangeReceiver 移动到它自己的 Java 文件中的 public 类。

关于java - 无法实例化接收器 : class has no zero argument,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35202771/

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