IModel层
public void getRequest(String dataUrl, Class calzz, final MyCallBack callBack) {
if (!isNetWork()){
callBack.onFail("网络状态不可用");
return;
}
RetrfitMessage.getInstance().getRequest(dataUrl, new RetrfitMessage.HttpClient() {
@Override
public void onSuccess(String data) {
callBack.onSuccess(data);
}
@Override
public void onFail(String error) {
callBack.onFail(error);
}
});
}
//判断网络状态
public static boolean isNetWork(){
ConnectivityManager cm = (ConnectivityManager) MyApplication.getContext().getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetworkInfo = cm.getActiveNetworkInfo();
return activeNetworkInfo!=null && activeNetworkInfo.isAvailable();
}
请求头
OkHttpClient builder = new OkHttpClient.Builder()
.addInterceptor(new Interceptor(){
@Override
public Response intercept(Chain chain) throws IOException {
Request request = chain.request();
SharedPreferences preferences = MyApplication.getContext().getSharedPreferences("User", Context.MODE_PRIVATE);
String uid = String.valueOf(preferences.getInt("uid", 0));
Request.Builder builder1 = request.newBuilder();
builder1.method(request.method(),request.body());
if(!TextUtils.isEmpty(uid)) {
builder1.addHeader("uid",uid);
}
Request build = builder1.build();
return chain.proceed(build);
}
})
App
private static Context context;
@Override
public void onCreate() {
super.onCreate();
Fresco.initialize(this);
context=getApplicationContext();
}
public static Context getContext(){
return context;
}