Kotlin继承 - 未传递参数上下文的值

6
我正在尝试使用Kotlin为Android构建一个“AccountAuthenticator”类。但是,在尝试实现“AbstractAccountAuthenticator”类时,我在编译时遇到以下异常:No value passed for parameter context。我不确定这是什么意思,也找不到任何解决方法。下面是相关代码:
import android.accounts.AbstractAccountAuthenticator
import android.accounts.Account
import android.accounts.AccountAuthenticatorResponse
import android.os.Bundle

class AccountAuthenticator: AbstractAccountAuthenticator() {}

请问有人知道这是什么意思,为什么会出现以及如何解决吗?

2个回答

13

AbstractAccountAuthenticator构造函数 接受一个 Context context 参数。因此,您需要以某种方式传递 Context 给它,例如,您的 AccountAuthenticator 也可以具有一个 Context 参数:

class AccountAuthenticator(context: Context): AbstractAccountAuthenticator(context) {}

解决了,谢谢。值得一提的是,上下文是从android.content.Context导入的。这是我遗漏的细节。 - NDevox
简单来说,我将“上下文”参数从继承类传递到基类的超级方法。 - Ajith M A

1
我不太了解Kotlin,但是AbstractAccountAuthenticator构造函数需要一个Context,请参见这里
所以我猜你必须实现这个构造函数和其他相关的抽象方法。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接