Api+GreenDao+Retrofit

//网络请求方式

public interface Api {
    @GET("%E7%A6%8F%E5%88%A9/10/{prae}")
    Call<Good> getNoParmars1(@Path("prae") int prae);
}

//接口Api 定义接口使用的

public  class  API_url {
    public static String Good_url="http://gank.io/api/data/";
}

//封装的一个Retrofit方法框架(也是获取代理对象的类)

public class Retrofit_view {


    private static Retrofit retrofit;

    public static Retrofit getreoefit(String url) {
        HttpLoggingInterceptor httpLoggingInterceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() {
            @Override
            public void log(String message) {
                Log.d("咕咕咕咕", message);
            }
        });
        httpLoggingInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY);

        OkHttpClient okHttpClient = new OkHttpClient.Builder().addInterceptor(httpLoggingInterceptor).build();

        retrofit = new Retrofit.Builder().client(okHttpClient).addConverterFactory(GsonConverterFactory.create())
                .baseUrl(url).build();
        return retrofit;
    }
    public static <T> T getApi(String url,Class<T> cla){
        Retrofit getreoefit = getreoefit(url);
        T t = getreoefit.create(cla);
        return t;
    };

//网络判断是否是有网的状态

public class Weri_sercise {

    public static boolean getsercise(Context context){
       ConnectivityManager systemService = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo activeNetworkInfo = systemService.getActiveNetworkInfo();
        if (activeNetworkInfo!=null){
            return true;
        }
        return false;
    }

//这是一个实现类

public class MaApp extends Application {
    public static MaApp instances;
    private DaoSession daoSession;
    private SQLiteDatabase writableDatabase;
    private DaoMaster.DevOpenHelper uers;
    private DaoMaster daoMaster;

    @Override
    public void onCreate() {
        super.onCreate();
        instances = this;
        setDatabase();
    }

    public static MaApp getInstances() {
        return instances;
    }

    private void setDatabase() {
        uers = new DaoMaster.DevOpenHelper(this, "uers-db", null);
        writableDatabase = uers.getWritableDatabase();
        daoMaster = new DaoMaster(writableDatabase);
        daoSession = daoMaster.newSession();
    }

    public DaoSession setDaoSession() {
        return daoSession;
    }

    public SQLiteDatabase setWritableDatabase() {
        return writableDatabase;
    }

//这是获取代理对象

Api api1 = Retrofit_view.getApi(url, Api.class);

//这是获取Retrofit对象(也可以成为是获取数据库)
resultsBeanDao = MaApp.getInstances().setDaoSession().getResultsBeanDao();

//获取Call对象
Call<Good> noParmars1 = api1.getNoParmars1(prae);

//异步请求
noParmars1.enqueue(new Callback<Good>() 

发布了49 篇原创文章 · 获赞 60 · 访问量 6万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章