首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Android
订阅
ldfly
更多收藏集
微信扫码分享
微信
新浪微博
QQ
89篇文章 · 0订阅
DataBinding,再学不会你砍我
开始之前咱们先考虑下面的问题,如果你觉得有些了解但又似是而非,那这篇文章能让你对databinding有一个全面的认识(蜜汁自信);如果你觉得这些问题都太简单了,那你是不是...也应该复习一下(强行挽留)。 Android Gradle 插件(版本>=3.1.0-alpha06…
Android AspectJ详解
AOP中的切面比较形象,各个业务模块就像平铺在一个容器中,假如现在需要给各个模块添加点击事件埋点,AOP就像给所有业务模块间插入一个虚拟的切面,后续所有的点击事件通过这个切面时,我们有机会做一些额外的事情。 之所以说是虚拟,是因为整个过程对具体的业务场景是非侵入性的,业务代码不…
谈谈Android AOP技术方案
本篇将会对现有的AOP技术做一个统一的介绍,尤其侧重在Android方向的落地,希望对你有所帮助,文中内容、示例大都来自工作总结,如有偏颇不妥,欢迎指正。 这里先统一一下基本名词,以便表述。 切面: 对一类行为的抽象,是切点的集合,比如在用户访问所有模块前做的权限认证。 切点:…
Android组件化跨进程通信框架Andromeda解析
随着项目结构越来越庞大,模块与模块间的边界逐渐变得不清晰,代码维护越来越困难,甚至编译速度都成为影响开发效率的瓶颈。 组件化拆分是比较常见的解决方案,一方面解决模块间的耦合关系、将通用模块下沉,另一方面做到各模块代码和资源文件的隔离,这样便可以放心进行模块按需编译、单独测试等等…
Gitflow 使用最强指北
Gitflow是一个基于feature分支管理的版本发布方案。它是由荷兰程序猿Vincent Driessen设计研发,开源项目地址gitflow-avh。 不同feature在不同feature分支上单独开发(或测试)。 确定版本号和此版本将要发布的功能后,将相应featus…
再见吧 buildSrc, 拥抱 Composing builds 提升 Android 编译速度
长期以来困扰我们的一个问题就是构建速度,AndroidStudio 的构建速度严重影响 Android 开发者的工作效率,尤其是更新一个版本号,导致整个项目重新构建,在网络慢的情况下,这是无法忍受的。 这篇文章涉及很多重要的知识点,请耐心读下去,我相信应该会给大家带来很多不一样…
[译][1.4K+ Star] Kotlin 新秀 Coil、Glide 和 Picasso 大比拼
Coil 作为图片加载库的新秀,和 Glide、Picasso 这些老牌图片库相比,它们的优缺点是什么以及 Coil 未来的展望?先来了解一下什么是 Coil。 Coil 是基于 Kotlin 开发的首个图片加载库,来自 Instacart 团队,来看看官网对它的最新的介绍。 …
Kotlin StateFlow 搜索功能的实践 DB + NetWork
之前有很多朋友跟我反馈,如何使用 Flow 实现搜索功能,所以我在 PokemonGo 项目中增加了两种搜索场景,分别演示 BroadcastChannels 和 StateFlow 的用法。 在分析这两种实现方式之前,需要先了解几个基本概念, Flow 和 Channel 是…
Google 推荐在项目中使用 sealed 和 RemoteMediator
在开始阅读本文之前,建议更新 PokemonGo 最新的代码,对照着代码一起看,为了节省篇幅,文中只会列出核心代码。 之前有小伙们问过我,如何在 Flow 基础上封装成功或者失败处理逻辑,关于这个问题,其实 Google Android 团队的工程师在 medium 上发表过一…
[译][Google工程师] 详解 FragmentFactory 如何优雅使用 Koin 以及部分源码分析
在之前的文章 [译][Google工程师] 刚刚发布了 Fragment 的新特性 “Fragment 间传递数据的新方式” 以及源码分析 介绍了 Fragment 1.3.0 中添加了几个重要的 API。 这篇文章涉及很多重要新的知识点,带着自己理解,请耐心读下去,应该可以从…