首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
android开发进阶
IT互联网大叔
创建于2021-05-19
订阅专栏
有深度的android开发总结
等 11 人订阅
共24篇文章
创建于2021-05-19
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Flow很难?:kotlin《序列 vs 集合》
为什么学Flow之前,大叔推荐你先学Sequence呢? 什么是Sequence? Sequence和Collection有什么不同? 什么时候该用Sequence,什么时候该用Collecti
android系统目录大整理
持续整理android系统目录以及相关api…… 一、APK安装目录 二、系统API和目录 三、framework目录
MVI架构模式?到底是谁在卷?《官方架构指南升级》
MVVM还没捂热,什么时候又来了个MVI?我们android开发这么卷吗?到底是谁在卷? android官方真的推荐用MVI模式?MVI和MVVM有什么区别?
组件化开花,就问你香不香
从2017年只有几个大厂在做组件化,到今天已经繁花似锦。 越来越多的团队,越来越多的项目都做了组件化。 大叔相信即使你没有做过组件化项目,但是,对组件化也早就听烂了……
秒懂:kotlin 集合操作fold vs reduce
一、理解fold 和 reduce操作 二、fold与reduce的区别 三、实践:fold()和reduce()有什么用呢?
架构师之路:重读设计模式《Head First 设计模式》
一、前言 前些年看的似懂非懂的技术书,现在重头看,好像并不难,而且会有种酣畅淋漓的感觉。 《设计模式》就是如此,大学那会,学设计模式,无论大叔怎么努力学,都是似懂非懂;大叔一度怀疑自己,是不是不适合做
深入kotlin:const 对话 val,有必要用const申明变量吗?
const val 修饰的的变量,一定是编译时的常量,在编译期就知道他的值了。不需要依赖运行时创建的任何变量。 而val申明的变量,是只读变量。只能赋值一次,可以是运行期间赋值。 编译时常量,属于只读变量的一种特殊情况。 在java代码中引用kotlin的变量时,不能直接使用v…
android定位权限适配看这篇就够了
上图是,原生android系统,定位权限申请的几次重大变更。 对于理解如何适配定位权限十分重要。 后台定位权限(ACCESS_BACKGROUND_LOCATION)十分敏感,与其他新增的权限不太一样。 理论上,android10 新增的权限,新特性不会作用在 targetSd…
android获取进程名函数,如何优化到极致?
在多进程的APP中,常常需要知道当前进程是主进程还是后台进程?还是什么进程。 通过ActivityManager来获取进程名,网上也能搜索到很多人推荐这个用法。 但是,大叔要说,这个方法不是最优解。 但是,大叔要说,这个方法不是最优解。 但是,大叔要说,这个方法不是最优解。 但…
java动态代理,轻轻松松从入门到精通
java的动态代理,首先它是用来实现 “代理模式” 的。 然后他是动态的可以灵活的代理 “任何类”【当然这个类需要有接口】。 我们先来看看动态代理能实现的效果。 如上示意图,类TestA、TestB想调用TargetObject0、TargetObject1……等目标对象的任何…
深入kotlin:google为何选择kotlin?kotlin如何解决java开发痛点【续】?
大叔可以肯定的说,“kotlin比java更好用”,这肯定不是谷歌选择kotlin的原因。 以谷歌的研发实力,完全有能力,参与到java的发展中来,让java变的越来越好用。甚至比kotlin还要好用。 2011~2014年java连续三年 拖更,2014年~2017年,又拖更…
深入kotlin:kotlin如何解决java开发痛点,让程序员happier
正如官网的slogan所描述:kotlin,是一门让程序员写代码时更有 幸福感 的 现代 语言。 kotlin是一门奔着钱而生的语言,我相信他一定会成为一门有 “钱途” 的语言。 JetBrains这家公司真的把程序员当 人,把程序员当用户来对待。从kotlin的迭代和发版节奏…
打破你的认知,java,除以0一定会崩溃吗?
接下来,我们直奔主题。开始我们的基本功。 运行直接崩溃。 于是我们打开Double这个类来看看。 于是,我们发现,正无穷大的定义居然是1.0f/0.0f 。负无穷大的定义为 -1.0f/0.0f,非数的定义为0.0f/0.0f java的单精浮点数float和双精浮点数doub…
把断言(Assert)用的淋漓精致,提高代码的健壮性
通常断言(assert)是在单元测试时,用来校验函数返回的结果。在自动化测试用来校验程序运行结果。 但是我们接下来要讨论的并不是单元测试中使用断言,而是在项目业务代码中使用断言。 我们一起来看几个,大家非常熟悉的例子。这些情况下使用断言会让代码更加优雅,更加健壮。 当出现有开发…
编译失败:ERROR: Unable to find method 'org.gradle.api.tasks.compile.CompileOptions.s
如下截图。我的gradle版本是5.4.1。com.android.tools.build:gradle的版本是3.0.1。 编译成功,搞定。
深入kotlin:深入浅出,kotin Any类
一、Any vs Object,两个类的成员变量的差异。 可以看到Any类只有3个成员方法,equals()、hashCode()、toString(),而Object的成员更丰富,不止有这三个方法。 还有wait()、notify()等方法。 Object是java的祖先类,…
时间戳总结:System.nanoTime(),System.currentTimeMillis(),SystemClock
今天的主题,从头到尾就两个字:时间。 坚持看完整篇blog,一定会有收获。 系统设置修改时钟,不影响该时间。 重启android系统后该值会重置为0。 修改系统时钟,会直接修改该时间。可以通过该值推算当前系统时钟的日期和时间。 重启手机对该时间无影响。 System.nanoT…
深入kotlin:一分钟入门kotiln协程,线程切换
非常简单,在kotlin的android项目中,添加两个依赖库,便可以享受协程了。 coroutine 实现线程切换,更是极为简单。
【连载】技巧4《android源码阅读及下载》
早前我们都用 grepcode在线看源码,不仅没墙,而且稳定好用,可惜grepcode服务器停服了好多年了。 最近 google 出品Code Search,https://cs.android.com/ ,更好用了,哇哈哈哈。 更好用了,哇哈哈哈。 更好用了,哇哈哈哈。 更好…
【连载】技巧3《android开发,通过main方法,写单元测试》
这是一个有趣的问题,并且会让你惊喜。 咦,看输出了日志。。。哈哈 但是。。。 但是, androidstudio,只是把这个程序当普通的java程序来执行。 结果肯定已经被你猜到了,crash了。因为这样只是一个普通的java程序在java虚拟机上执行而已。 在执行到Log.p…
下一页