博客
关于我
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/

    你可能感兴趣的文章
    Pyinstaller:‘;Fiona‘;没有属性‘;_loading‘;(很可能是由于循环导入)
    查看>>
    pyinstaller:更改应用程序图标
    查看>>
    Pylint“未解决的导入“;Visual Studio 代码中的错误
    查看>>
    pyLoad远程代码执行漏洞复现(CVE-2023-0297)
    查看>>
    pymongo update_one(),upsert=True,不使用$运算符
    查看>>
    pymongo 中的快速或批量更新
    查看>>
    pymongo删除操作
    查看>>
    PyMongo按多个关键点分组
    查看>>
    Pympress:强大的双屏PDF阅读器
    查看>>
    pymysql.err.InternalError: (1054, "Unknown column '27D24A3B' in 'where clause'")之错误解决
    查看>>
    pymysql.err.OperationalError: (1364, “Field ‘id‘ doesn‘t have a default value“)
    查看>>
    PyMySQL库对Mysql数据库进行增删改查与工具类封装
    查看>>
    pynput的基本介绍和使用
    查看>>
    pyodbc 通过 IIS7 连接到 MSSQL 2005 服务器
    查看>>
    PyPI 存储库中的 JarkaStealer:深入解析与防范措施
    查看>>
    Pyplot tutorial,Pyplot官方教程自翻译
    查看>>
    PyQ5学习笔记——使用内部槽函数关闭窗口
    查看>>
    PyQ5学习笔记——使用自定义槽函数关闭窗口
    查看>>
    PyQt MimeData 文件名
    查看>>
    PyQt QML Material Design 按钮背景不会改变
    查看>>