Android - 準備工作【仿】淘寶App

首先是所有要用到的依賴

依賴包

compile 'com.facebook.fresco:fresco:0.12.0'
    compile 'org.greenrobot:eventbus:3.1.1'
    compile 'com.jakewharton:butterknife:8.8.1'
    compile 'io.reactivex.rxjava2:rxjava:2.1.1'
    compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
    compile 'com.squareup.retrofit2:retrofit:2.0.0'
    compile 'com.squareup.retrofit2:converter-gson:2.0.2'
    compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
    compile 'com.android.support:recyclerview-v7:26.0.0-alpha1'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'

清單文件


    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

ApiService.java網絡接口

public interface ApiService {
    //http://120.27.23.105/user/login?mobile=15011420106&password=123456
    @GET("user/login")
    Flowable<LoginBean> loginget(@QueryMap Map<String, String> map);

    @GET("user/reg")
    Flowable<RegisBean> regisget(@QueryMap Map<String, String> map);

    //https://www.zhaoapi.cn/product/getProducts?pscid=39&page=1
    @GET("product/getProducts")
    Flowable<DetailsBean> detailsget(@QueryMap Map<String, String> map);

    //https://www.zhaoapi.cn/product/getProductDetail?source=android&pid=1
    @GET("product/getProductDetail")
    Flowable<DetaiBean> detaiget(@QueryMap Map<String, String> map);

    //product/addCart
    @GET("product/addCart")
    Flowable<AddBean> addget(@QueryMap Map<String, String> map);

    //http://120.27.23.105/product/getCarts?source=android&uid=1653
    @GET("product/getCarts")
    Flowable<SeBean> seget(@QueryMap Map<String, String> map);

    //http://120.27.23.105/product/deleteCart?source=android&uid=1653&pid=2
    @GET("product/deleteCart")
    Flowable<DeBean> deget(@QueryMap Map<String, String> map);
}

RetrofitUtils.java

public class RetrofitUtils {
    private static volatile RetrofitUtils instance;
    private final Retrofit retrofit;

    private RetrofitUtils(String baseurl) {
        retrofit = new Retrofit.Builder()
                .baseUrl(baseurl)
                .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
                .addConverterFactory(GsonConverterFactory.create())
                .build();
    }

    public static RetrofitUtils getInstance(String baseurl) {
        if (instance == null) {
            synchronized (RetrofitUtils.class) {
                if (instance == null) {
                    instance = new RetrofitUtils(baseurl);
                }
            }
        }
        return instance;
    }

    public Retrofit getretrofit() {
        return retrofit;
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章