
Android 项目架构(MVP模式,组件化,架构组件,插件化)
文章平均质量分 82
新根
汗水凝结成时光胶囊,独自在这命运里拓荒
展开
-
Android 架构组件之Room数据库 处理Schema export Error
Android 架构组件之Room数据库,报错:Schema export directory is not provided to the annotation processor so we cannot export the schema.原创 2017-12-05 22:51:25 · 23850 阅读 · 2 评论 -
Android Acrchitecture Components( 架构组件)+热门框架(Retrofit+OkHttp+RxJava2+Glide)
一个Android Acrchitecture Components(架构组件)+热门框架(Retrofit+OkHttp+RxJava2+Glide)的案例,实现电影列表的加载。原创 2017-12-16 12:36:59 · 2928 阅读 · 0 评论 -
Android组件化+Arouter通讯
前言: 实际开发中越是大型的项目,代码量越多,而AndroidStudio编译的速度越慢。除了抬高电脑配置外,如何提高程序员的开发效率越是迫在眉睫。除此之外,团队合作开发,合并代码也是一个头疼的问题。虽然可以使用svn/git来规避一些问题,但团队中一个人的代码出了问题,导致自己也是被迫停止开发也是可能的。组件化: 项目代码臃肿的时候,通常考虑拆分代码,分层的方式。组件化是将...原创 2018-05-13 19:48:23 · 6988 阅读 · 3 评论 -
Android插件化之DexClasssLoader动态加载apk(Java代码和资源文件)
DexClassLoader介绍: DexClassLoader可以载入一个含有classes.dex文件的压缩包,可以是jar,可以是apk,也可以是含有dex文件的zip。构造器DexClassLoader(String dexPath, String optimizedDirectory, String libraryPath, ClassLoader parent)de...原创 2018-06-03 12:25:58 · 9048 阅读 · 0 评论 -
Android插件化 Hook方式解决DialogFragment旋转问题
前言: android插件化是这几年比较流行的技术,可以实现热更新,可以动态某些某块工程。使用插件化开发项目的时候,插件项目中创建了一个DialogFramgent子类。 当屏幕旋转后,重新创建fragment,报错:Caused by: android.app.Fragment$InstantiationException: Unable to instantiate fra...原创 2018-06-09 21:17:44 · 1155 阅读 · 0 评论 -
Android Architecture Blueprints(架构蓝图)
android项目架构蓝图:MVP,MVVM项目总纲翻译 2017-05-14 19:49:07 · 1928 阅读 · 0 评论 -
Android插件化之ContentProvider
先来了解一下ContentProvider的安装和获取过程,查找Hook点。安装ContentProvider过程:应用程序在创建Application的过程中,执行handleBindApplication(),会将contentprovider进行安装。ActivityThreadprivate void handleBindApplication(AppBindData data) ...原创 2019-07-24 11:49:18 · 994 阅读 · 1 评论 -
android插件化之BrocastReceiver
实现BrocastReceiver的插件之前,先来了解一下应用程序是如何被解析AndroidManifest.xml中各种标签的。先来了解一下应用程序安装过程系统启动过程中,会扫描某些目录的程序,安装加载过程,为应用程序分配Linux的用户Id和Linux的用户组Id,也会解析程序。先来看下scanPackageLI(): private PackageParser.Package sc...原创 2019-07-25 11:42:46 · 482 阅读 · 0 评论 -
Android插件化之动态替换Application
先分析Application的创建过程和生命周期,从而对症下药,达到动态替换Application的效果。先来了解一下Application的创建过程。启动应用进程后,会通知AMS,最终回到ActivityThread中的Handler处理,H.BIND_APPLICATION标识对应的动作,去开始创建Application对象。Handler中回调处理:private class H e...原创 2019-07-23 11:41:37 · 2089 阅读 · 1 评论