当在Apollo Android(GraphQL)中使用自定义类型构建文件时,可能会出现警告:“无法为最终字段分配值”。这是由于自定义类型的字段被标记为val
(即只读)而不是var
(即可读写)引起的。下面是解决该警告的代码示例:
var
而不是val
。class CustomType {
var field1: String = "" // 修改 val 为 var
var field2: Int = 0 // 修改 val 为 var
}
field1
和field2
的默认值设置为null
,并在构造函数中接受参数来初始化它们。@CustomScalar("CustomType")
class CustomType {
val field1: String?
val field2: Int?
constructor(field1: String?, field2: Int?) {
this.field1 = field1
this.field2 = field2
}
}
通过将字段声明为var
并在构造函数中进行初始化,可以解决“Apollo Android(GraphQL)自定义类型构建文件警告:‘无法为最终字段分配值’”的问题。