AppComponent.java 1.5 KB
Newer Older
J
jessyan 已提交
1 2 3 4
package me.jessyan.mvparms.demo.di.component;

import android.app.Application;

J
jessyan 已提交
5
import com.google.gson.Gson;
J
jessyan 已提交
6
import com.jess.arms.base.AppManager;
J
jessyan 已提交
7 8 9 10
import com.jess.arms.di.module.AppModule;
import com.jess.arms.di.module.ClientModule;
import com.jess.arms.di.module.ImageModule;
import com.jess.arms.widget.imageloader.ImageLoader;
J
jessyan 已提交
11
import com.tbruyelle.rxpermissions.RxPermissions;
J
jessyan 已提交
12 13 14 15

import javax.inject.Singleton;

import dagger.Component;
J
jessyan 已提交
16
import me.jessyan.mvparms.demo.di.module.CacheModule;
J
jessyan 已提交
17
import me.jessyan.mvparms.demo.di.module.ServiceModule;
J
jessyan 已提交
18
import me.jessyan.mvparms.demo.mvp.model.api.cache.CacheManager;
J
jessyan 已提交
19
import me.jessyan.mvparms.demo.mvp.model.api.service.ServiceManager;
J
jessyan 已提交
20
import me.jessyan.rxerrorhandler.core.RxErrorHandler;
J
jessyan 已提交
21 22 23 24 25 26
import okhttp3.OkHttpClient;

/**
 * Created by jess on 8/4/16.
 */
@Singleton
J
jessyan 已提交
27
@Component(modules = {AppModule.class, ClientModule.class, ServiceModule.class, ImageModule.class, CacheModule.class})
J
jessyan 已提交
28 29 30
public interface AppComponent {
    Application Application();

J
jessyan 已提交
31
    //服务管理器,retrofitApi
J
jessyan 已提交
32 33
    ServiceManager serviceManager();

J
jessyan 已提交
34 35 36
    //缓存管理器
    CacheManager cacheManager();

J
jessyan 已提交
37 38 39
    //Rxjava错误处理管理类
    RxErrorHandler rxErrorHandler();

J
jessyan 已提交
40 41 42
    //用于请求权限,适配6.0的权限管理
    RxPermissions rxPermissions();

J
jessyan 已提交
43 44
    OkHttpClient okHttpClient();

J
jessyan 已提交
45
    //图片管理器,用于加载图片的管理类,默认使用glide,使用策略模式,可替换框架
J
jessyan 已提交
46
    ImageLoader imageLoader();
J
jessyan 已提交
47 48 49

    //gson
    Gson gson();
J
jessyan 已提交
50 51 52

    //用于管理所有activity
    AppManager appManager();
J
jessyan 已提交
53
}