自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 WMRouter:美团外卖Android开源路由框架(1)

目前业界已有的一些Android路由框架,不能满足外卖C端App在开发过程中的实际需要,因此我们开发了WMRouter路由框架。借鉴网络请求的思想,设计了基于UriRequest、UriHandler、UriInterceptor的URI分发机制,在保证功能灵活强大的同时,又尽可能的降低了使用难度;另一方面,借鉴SPI的设计思想、Java和美团平台的ServiceLoader实现,开发了自己的ServiceLoader模块,解决外卖平台化过程中的四个问题(通信问题、复用问题、依赖注入、编译问题)。

2024-05-16 12:06:31 420

原创 Jetpack学习之 LiveData

我们可以自定义一个 LiveData, 因为会有观察者来观察这个 LiveData, 所以观察者处于 STARTED 或者 RESUMED 时,LiveData 将会处于 Activity状态,这个时候通过实现onActive()来通知观察者。下面是个例子,我们设定一个可以变化的数据类:= null// 观察者处于活跃状态, 则通知它// 这里的数据是写死的, 在实际项目中, 可以以监听器不断输出数据// 这里的数据是写死的, 在实际项目中, 可以以监听器不断输出数据。

2024-05-15 15:18:19 462

原创 Android的图文混合实现之TextView+html加载图片

从网上找的代码感觉很好用://图片手势缩放,点击放大//初始化的缩放量//最大缩放量//中间缩放量//缩放手势监听//触摸点发生移动时的触摸点个数//记录移动之前按下去的那个坐标点//开始移动的滑动距离//是否可以移动//是否需要考虑left和right出现白边//是否需要考虑top和boottom出现白边//手势监听,如果正在缩放中就不向下执行,防止多次双击/**Matrix的对图像的处理Translate 平移变换。

2024-05-12 11:15:03 437

原创 Android-Jetpack重磅升级!新的类库以及现有类库重大更新!

前面快速介绍了 Jetpack 在之前几个月的更新。拥有 90+ 可用类库,我们也知道你很难找到你需要的,所以我们重新设计了Jetpack 网站,并添加了一个方便的 API 选择器, 以快速帮您找到可以解决问题的 Jetpack 库。更多 Jetpack 的信息,请关注 Jetpack 周(7 月 20 日这一周)即将放出的视频,博客和 codelab。译者: 秉心说地址:https://juejin.im/post/5ee1d438518825434566cf4f。

2024-05-11 04:35:47 1123

原创 android 方式实现imageview圆角(1)

/ 如果图片的宽或者高与view的宽高不匹配,计算出需要缩放的比例;所以我们这里取大值;//view的宽度/bitmap的宽度=缩放倍数。// 默认为Circle。初始化BitmapShader//给paint附加一个具有某种魔力(缩放)的shader。// 默认为10dp。// 先给paint设置shader;// shader的变换矩阵,我们这里主要用于放大或者缩小。// 拿到bitmap宽或高的小值//我们需要画正方形。//以下为drawable转bitmap的通用方法。// 圆角图片的范围。

2024-05-10 22:38:07 950

原创 面试必考体系庞大的Handler你真的都了解吗?Handler二十七问带你打破砂锅问到底!(1)

在该方法中加入了同步屏障,后续加入一个异步消息,最后会执行到,用于申请VSYNC信号。再看看loop方法,在消息被分发之后,也就是执行了方法之后,还偷偷做了一个操作——。public static void loop() {for (;😉 {Message msg = queue.next(); // might blocktry {msg.target.dispatchMessage(msg);}msg.recycleUnchecked();}}//Message.javaprivate static

2024-05-08 19:21:20 634

原创 面试“阿里钉钉”居然一面就被怼?幸终得内推机会,喜提美团offer

以下所展示的全部资料,均可以免费分享,直接点击我领取!(1)多刷题自己多刷一些面试题是非常重要的,即使是在自己不需要面试的情况下,也要经常了解现在的大厂小厂面试都会问一些什么?现在比较流行的技术是什么等等诸如此类。那么我是如何刷题的呢?刷题主要分为Android技术(内含Java基础)以及算法两大类,搜集了目前比较新的一些题册,包括【Android面试指导】以及【算法刷题】,如算法方面就有LeetCode。

2024-05-08 18:21:30 670

原创 阿里P8大佬内部整理Jetpack宝典流出!天花板级别架构组件最快上手指南!(1)

最后这里放上我这段时间复习的资料,这个资料也是偶然一位朋友分享给我的,里面包含了腾讯、字节跳动、阿里、百度2019-2021面试真题解析,并且把每个技术点整理成了视频和PDF(知识脉络 + 诸多细节)。还有高级架构技术进阶脑图、高级进阶架构资料帮助大家学习提升进阶,也可以分享给身边好友一起学习。一起互勉~《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!阶脑图、高级进阶架构资料** 帮助大家学习提升进阶,也可以分享给身边好友一起学习。

2024-05-08 17:15:22 1067

原创 速学TypeScript-精简划重点手册-中册

感觉现在好多人都在说什么安卓快凉了,工作越来越难找了。又是说什么程序员中年危机啥的,为啥我这年近30的老农根本没有这种感觉,反倒觉得那些贩卖焦虑的都是瞎j8扯谈。当然,职业危机意识确实是要有的,但根本没到那种草木皆兵的地步好吗?Android凉了都是弱者的借口和说辞。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。

2024-05-08 16:04:52 971

原创 起飞!这两份技术点拉满的Android Framework 精编内核解析+Flutter 技术进阶精编笔记,可能价值百万!(1)

FrameworkFramework即架构,它是一个语言开发软件,提供了软件开发的框架,使开发更具工程性、简便性和稳定性.NET Framework通过COM Interop(COM互操作)技术支持COM+和MTS。一个传统的COM应用程序能够调用一个.NET组件,同时.NET组件(在.NET中称为.NET Assembly)也能够调用一个COM组件。这一非常强大的双向互操作特性使你可以在[应用程序中混合使用两类技术。Flutter跨平台开发是当下最受欢迎、应用最广泛的框架之一。能实现跨平台开发的框架 也五

2024-05-08 14:41:27 787

原创 记一次悬浮窗的上线以及坑点总结

很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从哪里入手去学习,对此我整理了一些资料如果你熟练掌握以下列出的知识点,相信将会大大增加你通过前两轮技术面试的几率!这些内容都供大家参考,互相学习。①「Android面试真题解析大全」PDF完整高清版+②「Android面试知识体系」学习思维导图压缩包《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-08 13:26:47 899

原创 自定义FlowLayout,android flowLayout实现(1)

由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示。《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容![外链图片转存中…(img-kPzUBizW-1715141292942)]

2024-05-08 12:09:02 1037

原创 技术干货---CMake编译配置工具,让编译设计工作更快更高效!

#指定生成的target(一个银行工具库,可以用来做汇率转换)add_library(rate_util SHARED rate_util.cpp)#指定library输出目录set(CMAKE_LIBRARY_OUTPUT_DIRECTORY PROJECTSOURCEDIR/build/libs/{PROJECT_SOURCE_DIR}/build/libs/PROJECTS​OURCED​IR/build/libs/{OS})#安装头文件到指定的目录install(FILES “rate_ut

2024-05-08 11:06:10 1223

原创 网络通信必备基础之Http协议&TCP-IP协议(二)(1)

简单来说,协议就是计算机之间通过网络实现通信时事先达成的一种“约定”;这种“约定”使那些由不同厂商的设备,不同CPU及不同操作系统组成的计算机之间,只要遵循相同的协议就可以实现通信。TCP/IP通常被认为是一个四层协议,如图:**链路层:**数据链路层或网络接口层,包括设备驱动程序和网络接口卡,它们一起处理与电缆的物理接口细节。**网络层:**处理分组在网络中的活动,如分组的选路;网络层的协议包括IP协议、ICMP协议(Internet互联网控制报文协议)、IGMP协议(Internet组管理协议)

2024-05-08 08:21:07 787

原创 简单易用!快速改善用户界面的10个技巧!

下面是有几位Android行业大佬对应上方技术点整理的一些进阶资料。有**【Android架构视频+BATJ面试专题PDF+核心笔记等资料。希望能够帮助到大家提升技术。如果大家想要获取的话,可以简信我【666】免费获取哦**高级UI,自定义ViewUI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!如果需要PDF版本可以在群文件夹里,自行领取!

2024-05-08 07:08:46 422

原创 秀一波多线程的操作技巧,又能Get新知识点了

/***/fun get(): T? {// 获取当前的线程val t = Thread.currentThread() as MockThread// 获取当前线程持有的ThreadLocalMapval map = getMap(t)if (map != null) {// 如果map不为null,就使用自己作为key来获取value(MockThreadLocal的实例)val e = map.get(this)if (e != null) {return e as T?}}// 如果map为null

2024-05-08 05:17:10 850

原创 牛笔了!Android开发还不会这些?如何面试拿高薪!

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

2024-05-08 03:59:51 552

原创 深入解析美团外卖Flutter-架构演进之路(上篇)(1)

Flutter是Google开发的一套全新的跨平台、开源UI框架,支持iOS、Android系统开发,并且是未来新操作系统Fuchsia的默认开发套件。自从2017年5月发布第一个版本以来,目前Flutter已经发布了近60个版本,并且在2018年5月发布了第一个“Ready for Production Apps”的Beta 3版本,6月20日发布了第一个“Release Preview”版本。Flutter 跨端技术一经推出便在业内赢得了不错的口碑,其在“多端一致”和“渲染性能”上的优势让其他跨端方案难

2024-05-08 02:53:47 1135

原创 汉字笔顺动画技术剖析

下面是有几位Android行业大佬对应上方技术点整理的一些进阶资料。希望能够帮助到大家提升技术高级UI,自定义ViewUI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!入门培训,学会这小块知识就能随便找到不错的工作了。

2024-05-08 01:48:42 543

原创 最后一遍复习:带你通过字节跳动面试

对程序员来说,很多技术的学习都是“防御性”的。也就是说,我们是在为未来学习。我们学习新技术的目的,或是为了在新项目中应用,或仅仅是为了将来的面试。但不管怎样,一定不能“止步不前”,不能荒废掉。!文章以下内容会给出阿里与美团的面试题(答案+解析)、面试题库、Java核心知识点梳理等《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取![外链图片转存中…(img-2rKujq9X-1715099394743)]

2024-05-08 00:30:44 681

原创 揭秘-Android-百万开发被迫转行背后的残酷真相,只是你没找对方向罢了

笔者之前工作是在金融公司可能并不是特别追求技术,而笔者又是喜欢追求技术的人,所以格格不入,只能把目标放在互联网大厂了。也希望大家都去敢于尝试和追逐自己的梦想!BATJ大厂Android高频面试题《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-07 22:34:21 951

原创 手机没网了,却还能支付,这是什么原理?

因为我最近的工作对都是与微信/支付宝有关,整体支付流程还是比较清楚,但是付款码为什么能离线支付确实不是很清楚,所以研究了一番,于是有了今天的文章。一、科普支付方式在聊付款码离线原理之前,我们先给不熟悉支付宝/微信支付方式同学先科普一下常见的两种支付方式。微信、支付宝线下支付常用支付方式有两种:一种是扫码,一种是被扫码!以支付宝为例,付款流程如图所示:图片来自支付宝官网第二种则是我们打开手机,展示我们的付款码,然后商家使用扫码枪等工具获取付款码完成支付,这种支付方式一般称为被扫支付(用户被扫码)。以支付宝为例

2024-05-07 21:23:11 1709

原创 成功入职字节跳动Android岗,定级2-2,入职就是30K-16薪,全靠这份PDF!(1)

很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从哪里入手去学习,对此我整理了一些资料如果你熟练掌握以下列出的知识点,相信将会大大增加你通过前两轮技术面试的几率!这些内容都供大家参考,互相学习。①「Android面试真题解析大全」PDF完整高清版+②「Android面试知识体系」学习思维导图压缩包《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-07 20:05:52 752

原创 征服面试官系列: Binder 核心机制和进程间通信,你都理解了吗?

@Overridepublic int getStudentGrade(String name) {return StudentMap.getStudentGrade(name);}@Overrideprotected boolean onTransact(int code, @NonNull Parcel data, @Nullable Parcel reply, int flags) throws RemoteException {if (code == REQUEST_CODE) {String na

2024-05-07 18:58:15 666

原创 常用ADB命令

上面这些公司都是时下最受欢迎的互联网大厂,他们的职级、薪资、福利也都讲的差不多了,相信大家都是有梦想和野心的人,心里多少应该都有些想法。也相信很多人也都在为即将到来的金九银十做准备,也有不少人的目标都是这些公司。我这边有不少朋友都在这些厂工作,其中也有很多人担任过面试官,上面的资料也差不多都是从朋友那边打探来的。除了上面的信息,我这边还有这些大厂近年来的面试真题及解析,以及一些朋友出于兴趣和热爱一起整理的Android时下热门知识点的学习资料。

2024-05-07 17:46:05 697

原创 使用Android Profile做性能分析及优化

学完之后,若是想验收效果如何,其实最好的方法就是可自己去总结一下。比如我就会在学习完一个东西之后自己去手绘一份xmind文件的知识梳理大纲脑图,这样也可方便后续的复习,且都是自己的理解,相信随便瞟几眼就能迅速过完整个知识,脑补回来。下方即为我手绘的Android框架体系架构知识脑图,由于是xmind文件,不好上传,所以小编将其以图片形式导出来传在此处,细节方面不是特别清晰。但可给感兴趣的朋友提供完整的Android框架体系架构知识脑图原件(包括上方的面试解析xmind文档)

2024-05-07 15:36:41 501

原创 学习网络优化,掌握了这些重点就等于成功了一大半!

随着移动网络的不断升级,客户端的网络传输由3G进化到Wifi、4G、5G,且Wifi场景越来越多。虽然网络环境在变好,但也对网络的应用提出了更高的要求,会发现很多大厂都十分重视网络指标,如果技术人员不加以控制,在弱网、体验、包括服务器带宽、流浪方面都会造成不同程度的损失。

2024-05-07 12:13:37 685

原创 字节跳动Android一面凉凉,竟以为一面是HR面

这部分算是必备技能。我个人倒是倾向于弱化基础知识的考查,毕竟每个候选人的背景不同,应该更看重聪明程度、学习能力、沟通理解力等,基础知识只能证明他不是一个优秀的工程师,却无法证明他是一个优秀的工程师。

2024-05-07 11:10:38 950

原创 如何在10分钟内让Android应用大小减少-60%?

各行各样都会淘汰一些能力差的,不仅仅是IT这个行业,所以,不要被程序猿是吃青春饭等等这类话题所吓倒,也不要觉得,找到一份工作,就享受安逸的生活,你在安逸的同时,别人正在奋力的向前跑,这样与别人的差距也就会越来越遥远,加油,希望,我们每一个人,成为更好的自己。BAT大厂面试题、独家面试工具包,资料包括 数据结构、Kotlin、计算机网络、Framework源码、数据结构与算法、小程序、NDK、Flutter《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-07 10:05:35 734

原创 启动SystemServer的进程:启动各种系统服务

//------------------------------ZygoteInit.java伪代码------------------------------public static void main(String argv[]){// 1.预加载frameworks/base/preloaded-classes和framework_res.apk资源// linux在fork进程时,只是为子进程创建一个数据结构,使子进程地址空间映射到与父进程相同的物理内存空间。// 虚拟机的创建也是实例拷贝,共享系

2024-05-07 03:38:42 1057

原创 原来学Flutter的人,现在后悔了吗?(2)

Flutter 到底能不能成为“跨平台开发终极之选”?===============================**1. Flutter 正在被越来越多的 App 所使用 **通过LibChecker app可以随便打开本人手机所安装的 app(参考了 GSY 方法),选择查看哪些 app 包含了 Flutter:发现了没有,几乎大厂的 App都在列:1. 微信2. 淘宝、天猫、UC、菜鸟、饿了么2. 度小满、百度贴吧4. 网易有道词典…这些 App 正在尝试甚至已经大规模使用Flutter。可以看到

2024-05-07 02:26:39 607

原创 分析Android未来几年的发展前景,制定一份属于你的移动开发职业规划!

光有这些思路和搞懂单个知识的应用是还远远不够的,在Android开源框架设计思想中的知识点还是比较多的,想要搞懂还得学会整理和规划:我们常见的**Android热修复框架、插件化框架、组件化框架、图片加载框架、网络访问框架、RxJava响应式编程框架、IOC依赖注入框架、最近架构组件Jetpack等等Android第三方开源框架,**这些都是属于Android开源框架设计思想的。如下图所示:这位阿里P8大佬针对以上知识点,熬夜整理出了一本长达1042页的完整版如何解读开源框架设计思想。

2024-05-07 01:03:20 500

原创 关于 Kotlin Coroutines, 你可能会犯的 7 个错误(2)

简历首选内推方式,速度快,效率高啊!然后可以在拉钩,boss,脉脉,大街上看看。简历上写道熟悉什么技术就一定要去熟悉它,不然被问到不会很尴尬!做过什么项目,即使项目体量不大,但也一定要熟悉实现原理!不是你负责的部分,也可以看看同事是怎么实现的,换你来做你会怎么做?做过什么,会什么是广度问题,取决于项目内容。但做过什么,达到怎样一个境界,这是深度问题,和个人学习能力和解决问题的态度有关了。大公司看深度,小公司看广度。大公司面试你会的,小公司面试他们用到的你会不会,也就是岗位匹配度。

2024-05-06 23:37:07 1112

原创 你好, View Binding! 再次再见, findViewById!

很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从哪里入手去学习,对此我整理了一些资料如果你熟练掌握以下列出的知识点,相信将会大大增加你通过前两轮技术面试的几率!这些内容都供大家参考,互相学习。①「Android面试真题解析大全」PDF完整高清版+②「Android面试知识体系」学习思维导图压缩包《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-06 22:09:05 610

原创 今日头条技术架构分析(1)

我们对用户的兴趣进行挖掘,会对用户的每个动作进行学习。主要使用:产生的用户模型数据和大部分架构一样,保存在MySQL/MongoDB(读写分离)以及Memcache/Redis中。随着用户量的不断扩展大,用户模型处理的机器集群数量较大。2015年前为7000台左右。其中,用户推荐模型包括以下维度:此时,需要每时每刻做推荐。今日头条会通过用户使用的手机,操作系统,版本等“识别”。另外,比如用户通过社交帐号登录,如新浪微博,头条会对其好友,粉丝,微博内容及转发、评论等维度进行对用户做初步“画像”。分析用户的主

2024-05-06 20:42:18 1359

原创 临近毕业:Android VS大数据Java的offer,我到底应该怎么选?

在校期间做的项目很杂,php的后端,老三大件的前端,android,片上代码都有写过,不过专攻android,也学的做的最多,可能跟入行多年的前辈们没得比,不过在同水平选手中算是android走的比较远的了,算下来连学带做有2年了,而且比较感兴趣。回到题中问题:我毕业后是选择现在比较热门做Java大数据岗,还是选择大学主攻方向的android岗?看完这位同学面对岗位选择的困惑,相信我们很多人都曾遇到过,作为一名Android从业多年的老员工,可以分享一些经验给新人。相信大家都听过这样一则小故事,比尔盖茨的办

2024-05-06 19:12:25 1085

原创 一文搞懂Android-JetPack组件原理之Lifecycle、LiveData、ViewModel与源码分析技巧(2)

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

2024-05-06 16:27:38 871

原创 【码上开学】Kotlin 的泛型

List

2024-05-06 15:13:26 962

原创 【Android进阶笔记】热修复(代码、资源、动态链接库)

跳槽季整理面试题已经成了我多年的习惯!在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。

2024-05-06 14:05:36 994

原创 《软件工程之美》打卡第三周

这个主题其实开发人员感受可能不会很深,我们日常更多是基于需求去评估单个需求完成可能存在的风险,比如技术选型和人力成本这些方面去考量,但对项目整体来看,要把需求都变得可控,所以风险管理就很重要,如果前期评估出了风险,可以通过砍需求或者延长时间来降低风险。这节课说的管理问题主要是软件项目中困扰项目经理和开发人员的一些问题,比如任务进度量化的问题,项目进展不够直观,项目经理需要耗费很大的精力去做任务管理等。,比如微软的MS Project,但存在不方便跟踪任务进度,进度不直观的缺点。

2024-05-06 13:01:31 907

空空如也

空空如也

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

TA关注的人

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