首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
ershixiong
掘友等级
喜欢电影、乒乓、跑步
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
101
文章 99
沸点 2
赞
101
返回
|
搜索文章
赞
文章( 99 )
沸点( 2 )
一文彻底搞懂Kotlin中的委托
1. 什么是委托? 委托,也就是委托模式,它是23种经典设计模式种的一种,又名代理模式,在委托模式中,有2个对象参与同一个请求的处理,接受请求的对象将请求委托给另一个对象来处理。委托模式是一项技巧,其他的几种设计模式如:策略模式、状态模式和访问者模式都是委托模式的具体场景应用。…
Android 后台运行白名单,优雅实现保活
我们知道,Android 系统会存在杀后台进程的情况,并且随着系统版本的更新,杀进程的力度还有越来越大的趋势。系统这种做法本身出发点是好的,因为可以节省内存,降低功耗,也避免了一些流氓行为。 但有一部分应用,应用本身的使用场景就需要在后台运行,用户也是愿意让它在后台运行的,比如…
详解Android Gradle生成字节码流程
当前绝大部分的Android工程都是使用Gradle框架搭配Android Gradle Plugin(以下简称AGP)和Kotlin Gradle Plugin(以下简称KGP)进行编译构建的。虽然市面上有很多入门介绍,但是分析其中实现细节的文章并不多。这篇文章主要介绍了AG…
RecyclerView缓存原理,有图有真相
1. RecyclerView缓存机制与性能优化关系 RecyclerView做性能优化要说复杂也复杂,比如说布局优化,缓存,预加载等等。其优化的点很多,在这些看似独立的点之间,其实存在一个枢纽:Adapter。因为所有的ViewHolder的创建和内容的绑定都需要经过Adap…
高级 UI 成长之路 (七) SVG 基础使用 + 绘制中国地图
前面陆陆续续写了几篇 高级 UI 系列文章 ,感觉还不错。因为工作内容原因作者对 UI 开发涉及的很少,所以打算写一点关于 UI 的文章,也算是给自己一个全面的复习。本篇文章还是 基本概念 + 实战来讲解。 SVG 的全称是 (Scalable Vector Graphics)…
Shadow解决Activity等组件生命周期的方法解析
每个Android插件框架要解决的首要问题都是Activity的生命周期问题。Activity代表了Service等其他需要注册的组件。不同是插件框架解决这个问题的前提也不完全一样。而我们的业务要求比较苛刻,再加上Android 9.0的非公开API限制,所以由这些前提要求: …
Shadow为什么要求插件和宿主包名一致
我们过去也用过基于各种反射实现的插件框架,用了3年左右时间,也维护了3年左右时间。在过去维护的经验中,我们就发现了插件使用单独包名(ApplicationId,下同)带来的问题。 ApplicationId一般是在build.gradle中设置的,在编译时这个字符串会被记录在2…
Android插件框架的两个作用
首先谈谈我们理解的Android插件框架有什么作用,免得大家同我们交流时不在一个频道。 我们理解的插件框架有两个作用:一是“自解耦”,二是“免安装”。 自解耦指的是一个应用原本由一份代码编译而成,希望改成将其中的一些功能单独编译,像插件一样动态插在主应用上。这样一来可是使主应用…
Tencent Shadow将在掘金持续分享
Tencent Shadow是腾讯最近开源的一款Android插件框架。我们的业务长期应用这项技术,在积累了大量经验后自主设计开发的一款Android插件框架。这款插件框架的设计是考虑了市面上所有Android插件框架的需求而设计的,但实现上只优先实现了我们自身业务所需要的功能…
Android 技巧 - Debug 判断不再用 BuildConfig
用 BuildConfig.DEBUG 来判断是否是 Debug 模式在单 Moudle 开发中很好用。但是如果项目有多个 Moudle, 则 Lib Module import 的是自己的 BuildConfig.java,编译时被依赖的 Lib Module 默认会提供 Release 版给其他 Module 或工程使用,这就很烦人了。 要怎么使 Module 中的 debug 判断可跟随主 Lib 切换,这篇文章比较了几种方法,并推荐了一个靠谱简便的。
下一页
个人成就
文章被点赞
48
文章被阅读
29,759
掘力值
623
关注了
5
关注者
13
收藏集
13
关注标签
5
加入于
2016-04-19