博客
关于我
Jetpack之Startup快速掌握
阅读量:100 次
发布时间:2019-02-25

本文共 2345 字,大约阅读时间需要 7 分钟。

??????????Android?????????

?Android????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????Startup???????????????

???????Startup??????????????????????????????


??????

Startup????????Android????????????????????????

  • ??????????????????????????????????????
  • ???????????????????????SDK????????????????????????
  • ????????????????????????????????????????????
  • ?????????????????????????????????????????

  • ??????

    Startup???????????????AndroidManifest??????????????

  • ??InitializationProvider??AndroidManifest.xml????????????androidx.startup.InitializationProvider?????author????????????????????????????

  • ??????????InitializationProvider??????meta-data????meta-data????androidx.startup????????????????????????Startup????????

  • ??????????????????meta-data????android:order??????????????????????Startup?????AndroidManifest????????????????


  • ??????

    ???Startup????????????????

    1. ????

    ?????????????SDK?????Initializer????????????

  • ?????????????????????Initializer??????

    class WorkManagerInitializer : Initializer
  • ??create?????????create???????????????????

    override fun create(context: Context): WorkManager {    // ?????    val configuration = Configuration.Builder().build()    // ?????WorkManager??    return WorkManager.getInstance(context)}
  • ??dependencies?????????dependencies??????????????????????????

    override fun dependencies(): List
    >> { return emptyList()}
  • 2. ?AndroidManifest???

    ?????????????AndroidManifest.xml????meta-data??????androidx.startup????


    ??????

    Startup???Android???????????????????????????

  • ?????????InitializationProvider?onCreate???????????????????????????????????????????????

  • ????????Startup?????AndroidManifest????????????????????????????????????????????????????????????

  • ???????????Map<Class, Object>????????????????????????????????????

  • ????????????????????????????????????????Initializer?????


  • ??????

    ???Startup???????????????????

  • ??????????????????????????????????????????????AndroidManifest??????

  • ???????????????AndroidManifest????????????????? declare ? run ????

  • ???????????????????????????????????????

  • ???????????????????????????????????


  • ????

    Startup??Android????????????????????????????????????SDK???????????????????????????????????????????????????????????Startup????????????????????????????????

    ??????????????????????????????????????

    转载地址:http://qrd.baihongyu.com/

    你可能感兴趣的文章
    ThreadLocal线程内部存储类
    查看>>
    thinkphp 常用SQL执行语句总结
    查看>>
    Oracle:ORA-00911: 无效字符
    查看>>
    Text-to-Image with Diffusion models的巅峰之作:深入解读 DALL·E 2
    查看>>
    TCP基本入门-简单认识一下什么是TCP
    查看>>
    tableviewcell 中使用autolayout自适应高度
    查看>>
    Orcale表被锁
    查看>>
    svn访问报错500
    查看>>
    Orderer节点启动报错解决方案:Not bootstrapping because of 3 existing channels
    查看>>
    org.apache.ibatis.exceptions.PersistenceException:
    查看>>
    org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned
    查看>>
    org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxxx'异常
    查看>>
    org.apache.poi.hssf.util.Region
    查看>>
    org.apache.xmlbeans.XmlOptions.setEntityExpansionLimit(I)Lorg/apache/xmlbeans/XmlOptions;
    查看>>
    org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /
    查看>>
    org.hibernate.HibernateException: Unable to get the default Bean Validation factory
    查看>>
    org.hibernate.ObjectNotFoundException: No row with the given identifier exists:
    查看>>
    SQL-CLR 类型映射 (LINQ to SQL)
    查看>>
    org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
    查看>>
    org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
    查看>>