首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
青霉素
掘友等级
Android/Flutter
|
Advance Group
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
96
文章 79
沸点 17
赞
96
返回
|
搜索文章
最新
热门
腾讯插件框架Shadow解析之动态化和插件加载
几个月前,腾讯开源了一款新的插件化框架Shadow。它的出现对于Android插件化的进程是十分重要的,因为随着google对系统API限制越来越严格,市面上大多数插件框架终将被被淘汰。而Shadow从新的角度解决了这一难题。 全动态插件框架:一次性实现完美的插件框架很难,但S…
组件化那些事
我司之前一直采用MVP+Dagger2+Retrofit+Rxjava的项目结构。这种结构对于我们这种只有几个人的团队来说一直没有什么问题,因此使用了多年。直到18年初,公司决定扩展海外业务。我们海外的业务模式是这样的: 采用挤牙膏的运营方式,前期只会有国内的部分业务,后期会慢…
Android AOP概述
网上很多人在介绍AOP时都这样说:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。个人认为这句话是错误。AOP和OOP一样,是一种程序设计思想,而非技术手段。 程序设计有六大原则,其中第一原则就是单一职责原则。意思就是一个类只负责一件事情。这与OO…
从Activity创建到View呈现中间发生了什么?
前段时间公司招人,作为面试官,我经常让面试者简述View的绘制流程。他们基本都能讲明白View的测量(measure)、布局(layout)、绘制(draw)等过程。还有少数人会提到DecorView和ViewRootImp的作用。但是,当我继续追问关于Window的内容时,几…
Android编译期插桩,让程序自己写代码(三)
Android编译期插桩,让程序自己写代码(一)中我介绍了APT技术。 Android编译期插桩,让程序自己写代码(二)中我介绍了AspectJ技术。 本文是这一系列的最后一篇,介绍如何使用Javassist在编译期生成字节码。老规矩,直接上图。 Javassist是一个能够非…
Android插件化之启动Activity
在上一篇文章Android插件化之ClassLoader中,我们已经可以成功加载apk,但是还没有办法启动插件中的Activity。我们知道,如果要启动一个Activity,那么这个Activity必须在AndroidManifest.xml中注册。因此,如果我们要启动插件中的…
Android插件化之ClassLoader
ClassLoader是由JVM平台提供的类加载器。它允许程序从网络、硬盘甚至是内存加载Class,这就为Android插件化提供了最基础的技术保障。Android平台对字节码文件作了优化,摒弃了传统JVM需要的.jar文件,而是采用体积更小的.dex文件。因此,Android…
Android插件化开篇
我在很久之前就想写一系列关于插件化的博客,可是总被这样或那样的事情打断。上周终于下定决心去做这个事情。今天这篇文章是一个开篇,作用有两个:一是把吹的牛发布到网上,前面已经说过了;二是对插件化的知识做一个简单的介绍,顺便帮自己整理一下接下来的写作思路。 通常,我们的app只有一个…
Android编译期插桩,让程序自己写代码(二)
在上篇文章Android编译期插桩,让程序自己写代码(一)的前言部分我放了一张图,用来说明编译期插桩的位置和相应的技术。这里,我还打算这张图来开篇。 在上图中,我们可以清楚的看到AspectJ的插桩位置是.java与.class之间。这很容易使人联想到编译器。事实上,Aspec…
大前端开发人员必知必会的HTTP知识
计算机与网络设备进行通信,双方就必须基于相同的方法。比如,如何找到通信目标,采用哪种语言通信,如何结束通信等。这些都需要规则约束,我们把这种规则称之为协议。 有人认为TCP/IP是指TCP和IP协议。其实,这是片面的。在特定场景下TCP/IP的确指这两种协议。更多情况下,它指基…
下一页
个人成就
文章被点赞
433
文章被阅读
57,810
掘力值
1,828
关注了
44
关注者
504
收藏集
0
关注标签
20
加入于
2018-01-08