美文网首页
Android之旅 -- ARouter 使用介绍(二)

Android之旅 -- ARouter 使用介绍(二)

作者: 程序猿老麦 | 来源:发表于2017-08-30 14:25 被阅读0次
美景总是好的

这一篇主要介绍 ARouter 的 API.

  1. 注解的使用
@Autowired
// 声明自动注入参数或者服务的注解, 例如 : @Autowired(name = "boy")
// name string 类型, 标示注入的参数名称或者服务名称
// required boolean 类型, 标示是否必须, 默认 false, 如果是 true, 并且 value 为空, 则抛出错误
@Interceptor
// 声明拦截器, 必须实现com.alibaba.android.arouter.facade.template.IInterceptor 接口
// priority int 类型, 标示拦截器优先级

下面是最核心的注解了 @Route

@Route
// path string 类型, 标示路径
// group string 类型, 标示分组
// extras int 类型, 标示一些状态(名字有点奇怪..感觉叫 flags 更合适)
// priority int 类型, 标示优先级
  1. com.alibaba.android.arouter.launcher.ARouter.java
    这个类其实就是 com.alibaba.android.arouter.launcher._ARouter的代理类
    接下来我们逐个看下ARouter这个类的主要方法
// ARouter 初始化
public static void init(Application application)
// ARouter的单例方法
public static ARouter getInstance()
// 打开调试, 使用InstantRun的时候,需要打开该开关,上线之后关闭,否则有安全风险
public static synchronized void openDebug()
// 依赖注入, 用来注入参数和 service, 结合Autowired 注解使用
// 一般在onCreate方法中使用, ARouter.getInstance().inject(this);
public void inject(Object thiz)
// 都是根据参数返回对应的Postcard
public Postcard build(String path)
public Postcard build(String path, String group)
public Postcard build(Uri url)
// 返回 service
public <T> T navigation(Class<? extends T> service)
// 主要用来启动 activity, requestCode是startActivityForResult用到的
public Object navigation(Context mContext, Postcard postcard, int requestCode, NavigationCallback callback)
  1. com.alibaba.android.arouter.facade.Postcard.java
    这个类是主要用来查找具体实现并传递参数. 继承了RouteMeta, 包含了注解内的一些信息.

ARouter的使用基本上就介绍这么多了, 还是可以发掘出一些奇怪的用法. 准备开始对 ARouter 的源码进行分析了

相关文章

网友评论

      本文标题:Android之旅 -- ARouter 使用介绍(二)

      本文链接:https://www.haomeiwen.com/subject/saszdxtx.html