与URL的kotlinvariables

我想通过variables的方式来完成一个URL,但是当我通过它,并将其添加到我想连接到的URL,它给了我一个错误

override fun onCreate var mparam = intent.getStringExtra("param") interface ApiActaPartido { @GET("My_url"+$mparam) fun getActaPartido(): Call } 

错误:(84,77)期望元素错误:(84,14)注释参数必须是编译时常量

请帮助。

注释参数必须是编译时常量

这是告诉你,编译器需要知道在编译时注解中使用的值。 由于您正在动态获取该variables的值( var mparam = intent.getStringExtra("param") ),因此无法将该值编译为正在尝试为您构建的字节码。

您必须find一种方法,使@GET所使用的值成为编译时常量,或者使用另一种方法来执行打算提供的任何function。

您只能将常量传递给注释参数。 如果ConfigAmaters.DATA_ACTA不是一个常量,那么你不能用它作为注释参数。

如果它实际上是一个val DATA_ACTA: String一个object内部的val DATA_ACTA: String ,那么你可以通过添加const来使其成为一个const

 object ConfigAmaters { const val DATA_ACTA: String = "..." } 

在这种情况下,编译器不应该再抱怨了。