本文介绍了错误:找不到翻新注释.(参数2)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这个界面:
public interface InterfazAguaHttp {
@FormUrlEncoded
@POST("/")
Call<String> saveContador(@Field("contador") Long contador, Callback<String> callBack);
}
其余的代码是这样的:
Retrofit builder = new Retrofit.Builder()
.baseUrl(ValoresGlobales.urlServlet)
.addConverterFactory(GsonConverterFactory.create())
.build();
InterfazAguaHttp interfaz = builder.create(InterfazAguaHttp.class);
Call<String> respuesta = interfaz.saveContador(93847597L, new Callback<String>() {
@Override
public void onResponse(Response<String> response, Retrofit retrofit) {
//Some logging
}
@Override
public void onFailure(Throwable t) {
//Some logging
}
});
这都在try-catch块中.在陷阱中,我收到此错误:
This is all inside a try-catch block. In the catch, I am receiving this error:
Error: No Retrofit annotation found. (parameter #2) for method InterfazAguaHttp.saveContador
如何摆脱这个错误,并且仍然可以进行回调?
How could I get rid of this error, and still have my callback?
谢谢.
推荐答案
将接口方法更改为此
public interface InterfazAguaHttp {
@FormUrlEncoded
@POST("/")
Call<String> saveContador(@Field("contador") Long contador);
}
以及其他类似的代码
Retrofit builder = new Retrofit.Builder()
.baseUrl(ValoresGlobales.urlServlet)
.addConverterFactory(GsonConverterFactory.create())
.build();
InterfazAguaHttp interfaz = builder.create(InterfazAguaHttp.class);
Call<String> respuesta = interfaz.saveContador(93847597L);
respuesta.enqueue(new Callback<String>() {
@Override
public void onResponse(Response<String> response, Retrofit retrofit) {
//Some logging
}
@Override
public void onFailure(Throwable t) {
//Some logging
}
});
以供参考
这篇关于错误:找不到翻新注释.(参数2)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!