例如。 代码段。 (显示我想要完成的事情)
活性
class MainActivity extends Activity{
public static string user;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
user="1"; //I WANT TO SEND THIS VALUE TO MY INTERFACE SHOWN BELOW
}
}
接口
package random.test.done;
import retrofit2.Call;
import retrofit2.http.GET;
public interface RequestExample{
@GET("claim.php?id=1" + MainActivity.user); /// how to get that user data here ?
Call<JSONResponseClaim> getJSONClaim();
}
@GET(&#34; claim.php?id = 1&#34; + MainActivity.user); //将鼠标悬停在MainActivity.user上时,界面中的这一行会出错(属性值必须是常量)
问题出现在上面代码段的评论中
答案 0 :(得分:0)
首先,您应该修复RequestExample
方法
@GET("/claim.php")
Call<JSONResponseClaim> getJSONClaim(
@Query("id") Integer id,
@Query("user") String user
);
然后在你的活动上使用它
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("https://myendpoint.com")
.build();
RequestExample service = retrofit.create(RequestExample.class);
Call<JSONResponseClaim> call = service.getJSONClaim(1, user);
希望它有所帮助。
另外,如果你想检查一些样品:
https://github.com/square/retrofit/tree/master/samples/src/main/java/com/example/retrofit