【发布时间】:2020-05-10 22:16:57
【问题描述】:
使用这些类有问题吗? 这个静态接口会不会让应用类以后出问题?
public class App extends Application {
private static KareezAPI apiService;
private InternetConnectionListener mInternetConnectionListener;
public static final int DISK_CACHE_SIZE = 10 * 1024 * 1024; // 10 MB
public void setInternetConnectionListener(InternetConnectionListener listener) {
mInternetConnectionListener = listener;
}
public void removeInternetConnectionListener() {
mInternetConnectionListener = null;
}
public KareezAPI getApiService(Activity activity) {
if (apiService == null) {
apiService = provideRetrofit(KareezAPI.BASE_URL,activity).create(KareezAPI.class);
}
return apiService;
}
}
这是界面:
public interface KareezAPI{
String BASE_URL="https://baseurl.heroapp.com/";
@POST("register")
Call<RegisterResponse> RegisterUser( @Body RegisterData registerData);
@POST("login")
Call<RegisterResponse> LoginUser(@Body LoginData loginData); public interface LoginUserCallback{
public void onResponse(Call<RegisterResponse> call, Response<RegisterResponse> response);
public void onFailure(Call<RegisterResponse> call, Throwable t);
}
}
这就是这个接口和app类的使用
((App) activity.getApplication()).getApiService(activity).LoginUser(loginData).enqueue(new
Callback<RegisterResponse>() {
@Override
public void onResponse(@NonNull Call<RegisterResponse> call, @NonNull
Response<RegisterResponse> response) {
loginUserCallback.onResponse(call, response);
}
@Override
public void onFailure(@NonNull Call<RegisterResponse> call, Throwable t) {
loginUserCallback.onFailure(call, t);
}
});
【问题讨论】:
标签: java android interface static