自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(309)
  • 收藏
  • 关注

原创 [译]Flutter for Android Developers - Async UI

本文讲解了我对Android开发现状的一些看法,也许有些人会觉得我的观点不对,但我认为没有绝对的对与错,一切交给时间去证明吧!愿与各位坚守的同胞们互相学习,共同进步!《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-17 09:03:36 986

原创 Shadow解决Activity等组件生命周期的方法解析

分享一份工作1到5年以上的Android程序员架构进阶学习路线体系,希望能对那些还在从事Android开发却还不知道如何去提升自己的,还处于迷茫的朋友!阿里P7级Android架构师技术脑图;查漏补缺,体系化深入学习提升**全套体系化高级架构视频;**七大主流技术模块,视频+源码+笔记有任何问题,欢迎广大网友一起来交流《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!何问题,欢迎广大网友一起来交流。

2024-05-16 23:46:57 623

原创 PictureSelector 相册全白不显示问题

imageView.setVisibility(eqLongImage ? View.GONE : View.VISIBLE);if (eqLongImage) {// 加载长图longImageView.setQuickScaleEnabled(true);longImageView.setZoomEnabled(true);longImageView.setDoubleTapZoomDuration(100);longImageView.setMinimumScaleType(SubsamplingSc

2024-05-16 20:53:44 573

原创 MVVM架构:LiveData + ViewModel + Repository搭配的三种解决方案

对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。整理的这些架构技术希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。下面是部分资料截图,诚意满满:特别适合有开发经验的Android程序员们学习。不论遇到什么困难,都不应该成为我们放弃的理由!如果你看到了这里,觉得文章写得不错就给个赞呗?《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》

2024-05-16 17:55:12 415

原创 Kotlin学习(3)可空类型和类型系统

Java中的数组的类型 T[](long[],int[]…}),而在Kotlin中,直接用Array类型表示数组,比如我们构造一个int数组,5个元素,每个元素的初始值为 i*i:val squareArray = Array(5, {i -> i * i})014916Kotlin中对Java中8个基本类型数组用了 新的 xxxArray来定义。(比如 BooleanArray、ByteArray、DoubleArray…)2. 可空类型==================================

2024-05-16 16:23:17 291

原创 Kotlin - 类和对象

【Android 详细知识点思维脑图(技能树)】其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。

2024-05-16 15:14:18 267

原创 IdleHandler 的原理分析和妙用

// which is not supported.···int nextPollTimeoutMillis = 0;for (;😉 {if (nextPollTimeoutMillis != 0) {Binder.flushPendingCommands();}···nativePollOnce(ptr, nextPollTimeoutMillis); //没有消息,阻塞等待···}}该方法在 的时候就阻塞等待,直到下一条消息可用为止。否则就继续向下执行。那我们再看看是在哪里唤醒的呢?是在消息入队最终执

2024-05-16 13:35:27 231

原创 Glide框架解析

load方法最终做的就是进行一些初始化的操作,获得了一个DrawableTypeRequest对象,通过这个对象我们就可以获得图片请求的request,然后再接下来的into方法中使用。得到ImageViewTarget 显示图片的地方// 得到ImageViewTarget 显示图片的地方构建一个请求一般的图片加载库,都是通过内存缓存LruCache、磁盘缓存DiskLruCache中去拿数据,那么Glide也是这样么?Glide的缓存设计可以说是非常先进的,考虑的场景也很周全。

2024-05-16 11:43:17 263

原创 Flutter状态管理终极方案GetX第一篇——路由(1)

今天关于面试的分享就到这里,还是那句话,有些东西你不仅要懂,而且要能够很好地表达出来,能够让面试官认可你的理解,例如Handler机制,这个是面试必问之题。有些晦涩的点,或许它只活在面试当中,实际工作当中你压根不会用到它,但是你要知道它是什么东西。最后在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司19年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。还有。

2024-05-16 10:25:37 297

原创 LRUCache源码分析(1)

**

2024-05-16 00:42:09 613

原创 Kotlin协程中的Flow

最后小编想说:不论以后选择什么方向发展,目前重要的是把Android方面的技术学好,毕竟其实对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!这里附上我整理的几十套腾讯、字节跳动,京东,小米,头条、阿里、美团等公司19年的Android面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。由于篇幅有限,这里以图片的形式给大家展示一小部分。

2024-05-15 23:24:25 670

原创 JetPack组件--LifeCycle生命周期组件详解

//doSomething}}class MainActivity : AppCompatActivity() {private val mPresenter = MyPresenter()override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)mPresenter.start()}override fun onDes

2024-05-15 22:11:03 849

原创 HTTP请求以及HTTP响应(1)

看到这篇文章的人不知道有多少是和我一样的Android程序员。35岁,这是我们这个行业普遍的失业高发阶段,这种情况下如果还不提升自己的技能,进阶发展,我想,很可能就是本行业的职业生涯的终点了。我们要有危机意识,切莫等到一切都成定局时才开始追悔莫及。只要有规划的,有系统地学习,进阶提升自己并不难,给自己多充一点电,你才能走的更远。千里之行始于足下。这是上小学时,那种一元钱一个的日记本上每一页下面都印刷有的一句话,当时只觉得这句话很短,后来渐渐长大才慢慢明白这句话的真正的含义。

2024-05-15 19:23:54 377

原创 Glide框架解析

load方法最终做的就是进行一些初始化的操作,获得了一个DrawableTypeRequest对象,通过这个对象我们就可以获得图片请求的request,然后再接下来的into方法中使用。得到ImageViewTarget 显示图片的地方// 得到ImageViewTarget 显示图片的地方构建一个请求一般的图片加载库,都是通过内存缓存LruCache、磁盘缓存DiskLruCache中去拿数据,那么Glide也是这样么?Glide的缓存设计可以说是非常先进的,考虑的场景也很周全。

2024-05-15 17:48:18 350

原创 Flutter状态管理终极方案GetX第一篇——路由(1)

今天关于面试的分享就到这里,还是那句话,有些东西你不仅要懂,而且要能够很好地表达出来,能够让面试官认可你的理解,例如Handler机制,这个是面试必问之题。有些晦涩的点,或许它只活在面试当中,实际工作当中你压根不会用到它,但是你要知道它是什么东西。最后在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司19年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。还有。

2024-05-15 16:30:32 224

原创 [-综合篇-] 相机、OpenGL、视频、Flutter和SurfaceView

它实现了接口,需要传入一个接口public class TriangleGLView extends GLSurfaceView implements GLSurfaceView.Renderer {private Triangle mTriangle;public TriangleGLView(Context context) {this(context, null);}public TriangleGLView(Context context, AttributeSet attrs) {sup

2024-05-15 15:33:19 339

原创 Volley 图片加载相关源码解析

UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!

2024-05-15 14:56:00 271

原创 RXJava之线程控制Scheduler(四)

以下是资料目录和内容部分截图里面包括详细的知识点讲解分析,带你一个星期入门Flutter。还有130个进阶学习项目实战视频教程,让你秒变大前端。《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-15 13:03:50 356

原创 Qemu(纯软实现)架构+KVM(基于kernel模拟硬件)原理(一)

其实客户端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。然而Android架构学习进阶是一条漫长而艰苦的道路,不能靠一时激情,更不是熬几天几夜就能学好的,必须养成平时努力学习的习惯。贵在坚持!《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!天几夜就能学好的,必须养成平时努力学习的习惯。贵在坚持!

2024-05-15 11:39:41 365

原创 MVP实战心得---封装Retrofit2

传送门:RxJava---------这个作为入门学习rxjava非常好这个写点基本的用法吧…首先看用的包://retrofit2–看名字就知道是啥了compile ‘com.squareup.retrofit2:retrofit:2.1.0’//CallAdapterFactory的Rx依赖包—导这个包才能配合rxAndroid使用compile ‘com.squareup.retrofit2:adapter-rxjava:2.1.0’//ConverterFactory的String依赖包---

2024-05-15 06:29:53 971

原创 Kotlin学习日志(四)函数

override fun onCreate(savedInstanceState: Bundle?) {…}对比区别如下:(1)Java使用“@Override”表示该函数重载父类的方法,而Kotlin使用小写的“override”在同一行表达重载操作(2)Java使用“public”表示该函数是公共方法,而Kotlin默认函数就是公开的,所以省略了关键字“public”(3)Java使用“void”表示该函数没有返回参数,而Kotlin不存在关键字“void”,若无返回参数,则不用特别说明。(4)Kotl

2024-05-15 04:57:56 902

原创 Kotin学习手记——类、接口、扩展方法、空类型

与java相同的是,kotlin抽象类中也可以有已实现的方法和纯抽象方法,但是,与java不同的是,如果子类要覆写抽象类里的已实现方法,必须在该方法前面加。val title = person.title // 此时的title类型是java平台的String类型,不是kotlin的String类型。类和扩展方法不一定在同一个kt文件中,但必须在方法的外层定义,即不能在某个函数方法中定义,必须是顶层的,如不能在main方法中定义。与接口一样,继承抽象类也是加冒号,不过后面的抽象类要写构造函数。

2024-05-15 03:50:22 737

原创 Hummer 引擎优化系列 - 揭秘最强内存泄漏检测工具

重点需要确定什么时候 Element 会被 Element Tree 丢弃,并且不会再使用,会被随后来的 GC 回收掉。finalizeTree 处理代码如下:@overridetry {= null)// 每一帧最后回收从 Element 树中移除的 Elementtry {// _inactiveElements 中记录不再使用的 Element});// 将 Element 拷贝到临时变量 elements 中。

2024-05-15 02:12:00 834

原创 Glide框架解析

load方法最终做的就是进行一些初始化的操作,获得了一个DrawableTypeRequest对象,通过这个对象我们就可以获得图片请求的request,然后再接下来的into方法中使用。得到ImageViewTarget 显示图片的地方// 得到ImageViewTarget 显示图片的地方构建一个请求一般的图片加载库,都是通过内存缓存LruCache、磁盘缓存DiskLruCache中去拿数据,那么Glide也是这样么?Glide的缓存设计可以说是非常先进的,考虑的场景也很周全。

2024-05-15 00:35:14 674

原创 Flutter状态管理终极方案GetX第一篇——路由(1)

今天关于面试的分享就到这里,还是那句话,有些东西你不仅要懂,而且要能够很好地表达出来,能够让面试官认可你的理解,例如Handler机制,这个是面试必问之题。有些晦涩的点,或许它只活在面试当中,实际工作当中你压根不会用到它,但是你要知道它是什么东西。最后在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司19年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。还有。

2024-05-14 23:18:01 855

原创 [译] MDC-102 Flutter:Material 结构和布局(Flutter)

总而言之,Android开发行业变化太快,作为技术人员就要保持终生学习的态度,让学习力成为核心竞争力,所谓“活到老学到老”只有不断的学习,不断的提升自己,才能跟紧行业的步伐,才能不被时代所淘汰。在这里我分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司20年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

2024-05-14 22:33:01 523

原创 Unity-3D游戏开发套件指南(入门篇)-免费资源(1)

最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的24套腾讯、字节跳动、阿里、百度2019-2021BAT 面试真题解析,我把大厂面试中常被问到的技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节。还有 高级架构技术进阶脑图 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。Android 基础知识点Java 基础知识点Android 源码相关分析常见的一些原理性问题。

2024-05-14 20:54:52 755

原创 Redis精通系列——LFU算法详述(Least Frequently Used - 最不经常使用)(2)

Redis对象头中的lru字段,在LRU模式下和LFU模式下使用方式并不相同。​在LRU模式,lru字段存储的是key被访问时Redis的时钟server.lrulock(Redis为了保证核心单线程服务性能,缓存了Unix操作系统时钟,默认每毫秒更新一次,缓存的值是Unix时间戳取模2^24)。当key被访问的时候,Redis会更新这个key的对象头中lru字段的值。因此在LRU模式下,Redis可以根据对象头中的lru字段记录的值,来比较最后一次key的访问时间。​用Java代码演示一个简单的Redis

2024-05-14 19:19:16 756

原创 OpenCV~捕获摄像头 帧率fps和waitkey函数 问题

返回值为int型,函数的参数为int型,当delay小于等于0的时候,如果没有键盘触发,则一直等待,此时的返回值为-1,否则返回值为键盘按下的码字;在下面给的实验代码中计算fps意义不大,只可大致测试出摄像头图像处理算法的时间消耗,使用MFC或者QT这个时候的fps才有意义,这里的fps是指游戏中的图像。只有系统,有方向的学习,才能在短时间内迅速提高自己的技术,只有不断地学习,不懈的努力才能拥有更好的技术,才能在互联网行业中立于不败之地。,不懈的努力才能拥有更好的技术,才能在互联网行业中立于不败之地。

2024-05-14 17:56:18 584

原创 Libhybris之Glibc和Bionic共存时的TLS问题(四)

本人从事Android开发已经有十余年,算是一名资深的移动开发架构师了吧。根据我的观察发现,对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。所以在此将我十年载,从萌新小白一步步成长为Android移动开发架构师的学习笔记,从Android四大组件到手写实现一个架构设计,我都有一一的对应笔记为你讲解。当然我也为你们整理好了百度、阿里、腾讯、字节跳动等等互联网超级大厂的历年面试真题集锦。

2024-05-14 16:11:45 251

原创 Kotlin_Native 为 AppCode 开发了个插件,你可以用 Kotlin 写 iOS App了!(2)

Hi,大家好,我是承香墨影!自从去年 12 月份,Kotlin 团队宣布 Kotlin/Native 支持和 Objective-C/Swift 相互调用之后,等于是说,Kotlin 以后将可能支持和 Objective-C/Swift 项目进行混合开发。这说明以后,我们可以直接使用 Kotlin 来开发 iOS App了。关于 Kotlin/Native,不了解的可以先看看官方文档简述。简单来说,Kotlin/Native 是一种将 Kotlin 编译为没有任何虚拟机支持的原生二进制文件的技术。Java

2024-05-14 15:00:56 811

原创 Jetpack MVVM七宗罪 之三 :在 onViewCreated 中请求数据(1)

首先是感觉自己的基础还是不够吧,大厂好像都喜欢问这些底层原理。之前的准备只涉及了Java、Android、计网、数据结构与算法这些方面,面对面试官对其他基础课程的考察显得捉襟见肘。下一步还是要查漏补缺,进行针对性复习。最后的最后,那套资料这次一定要全部看完,是真的太全面了,各个知识点都涵盖了,几乎我面试遇到的所有问题的知识点这里面都有!希望大家不要犯和我一样的错误呀!!!一定要看完!《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-14 13:32:39 737

原创 IOC架构设计之ButterKnife源码&原理(二)上篇(2)

在java中定义自己的处理器都是继承自AbstractProcessor前3个方法都试固定写法,主要是process方法。//用来指定你使用的 java 版本。通常你应该返回 SourceVersion.latestSupported()@Override//会被处理器调用,可以在这里获取Filer,Elements,Messager等辅助类,后面会解释@Override。

2024-05-14 09:27:50 389

原创 Google Play 政策更新提醒与重点解读 _ 2024 年 4 月

最后小编想说:不论以后选择什么方向发展,目前重要的是把Android方面的技术学好,毕竟其实对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!这里附上我整理的几十套腾讯、字节跳动,京东,小米,头条、阿里、美团等公司19年的Android面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。由于篇幅有限,这里以图片的形式给大家展示一小部分。

2024-05-14 02:18:38 921

原创 Flutter状态管理终极方案GetX第一篇——路由(2)

这里我希望可以帮助到大家提升进阶。Android学习PDF+架构视频+面试文档+源码笔记高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料这几块的内容。非常适合近期有面试和想在技术道路上继续精进的朋友。喜欢本文的话,不妨给我点个小赞、评论区留言或者转发支持一下呗~《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-14 00:57:01 897

原创 Volley 图片加载相关源码解析

UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!

2024-05-13 19:55:27 960

原创 RxJava再学习系列一(1)

开发是面向对象。我们找工作应该更多是面向面试。哪怕进大厂真的只是去宁螺丝,但你要进去得先学会面试的时候造飞机不是么?作者13年java转Android开发,在小厂待过,也去过华为,OPPO等,去年四月份进了阿里一直到现在。等大厂待过也面试过很多人。深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。这里附上上述的技术体系图相关的几十套腾讯、头条、阿里、美团等公司的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含。

2024-05-13 18:04:42 748

原创 Qemu架构解析(二)(2)

首先是一个知识清单:(对于现在的Android及移动互联网来说,我们需要掌握的技术)泛型原理丶反射原理丶Java虚拟机原理丶线程池原理丶注解原理丶注解原理丶序列化Activity知识体系(Activity的生命周期丶Activity的任务栈丶Activity的启动模式丶View源码丶Fragment内核相关丶service原理等)代码框架结构优化(数据结构丶排序算法丶设计模式)APP性能优化(用户体验优化丶适配丶代码调优)热修复丶热升级丶Hook技术丶IOC架构设计。

2024-05-13 16:40:47 989

原创 OOP - 开闭原则(OCP)

本文讲解了我对Android开发现状的一些看法,也许有些人会觉得我的观点不对,但我认为没有绝对的对与错,一切交给时间去证明吧!愿与各位坚守的同胞们互相学习,共同进步!《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-13 15:39:33 844

原创 LeetCode题解(二)0100-0199

为了方便有学习需要的朋友,我把资料都整理成了视频教程(实际上比预期多花了不少精力)当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。无论你现在水平怎么样一定要 持续学习 没有鸡汤,别人看起来的毫不费力,其实费了很大力,这四个字就是我的建议!!我希望每一个努力生活的IT工程师,都会得到自己想要的,因为我们很辛苦,我们应得的。

2024-05-13 13:55:11 795

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除