
移动开发
文章平均质量分 87
程序员不秃
这个作者很懒,什么都没留下…
展开
-
抖音 Android 性能优化系列:启动优化实践
作者:字节跳动技术团队启动性能是 APP 使用体验的门面,启动过程耗时较长很可能使用户削减使用 APP 的兴趣,抖音通过对启动性能做劣化实验也验证了其对于业务指标有显著影响。抖音有数亿的日活,启动耗时几百毫秒的增长就可能带来成千上万用户的留存缩减,因此,启动性能的优化成为了抖音 Android 基础技术团队在体验优化方向上的重中之重。前言启动是指用户从点击 icon 到看到页面首帧的整个过程,启动优化的目标就是减少这一过程的耗时。启动过程比较复杂,在进程与线程维度,它涉及到多次跨进程的通信与.转载 2022-03-29 14:32:24 · 1370 阅读 · 0 评论 -
阿里三面真题,三面都离不开插件化的问题,真是太难了~
作者:考拉大厂难进,阿里作为众多程序员的圣地,进去更是难上加难。在这次面试之前,我根据阿里招聘的岗位要求投了很多其它公司类似的岗位进行面试积攒经验,像华捷艾米、信雅达、小米、美团等,有些被虐的很惨,也拿到了几个offer,犹豫了一下还是决定继续冲击阿里!可以看到阿里学历一般都要求本科、计算机相关专业;对底层原理的要求较高我自己总结了一下,能拿到这次offer原因主要有两点,一是多面试多总结,二是要想办法和面试官成为朋友。面试失败,好的面试官会指出你的不足,提出一些针对性的学习建议。这种面试.原创 2022-03-28 21:36:10 · 391 阅读 · 0 评论 -
ViewModel原理解析,人人都能看得懂~
作者:不说话的匹诺槽前言今天想跟大家聊的是Jetpack 组件之ViewModel , 之前对ViewModel 也是一知半解,只是从博客上大概了解过它的原理,自己并没有深入了解过,所以打算自己由浅入深的领略一下,本人自己感觉不算是聪明的那类人,连我都能看得懂,相信各位肯定没问题,人人都能看得懂!先来看看ViewModel是什么?ViewModel 类旨在以注重生命周期的方式存储和管理界面相关的数据。ViewModel 类让数据可在发生屏幕旋转等配置更改后继续留存。架构组件为界面控制器提供了.转载 2022-03-28 13:47:40 · 1069 阅读 · 0 评论 -
字节Android 岗五面都过,最后又被刷下去了,原因是……
作者:虾皮球前言本人从事Android 开发已有3年了,毕业于某二本学院,在学校学的专业是计算机应用专业,刚毕业从来是做的Java开发,因自己一直对Android 感兴趣,于是从中就开始转行做起了Android 开发。我这次给大家分享的一段字节跳动的面经。温馨提示:面试时最好不要虚报工资。本来字节跳动是很想去的,几轮面试也通过了,最后没offer,自己只想到原因是:一是自己虚报工资,比实际高30%;二是他们有找到了更好的人选,这个可能性不大;想知道答案请往下看吧。面试流程:一面1.okht.原创 2022-03-27 21:23:20 · 320 阅读 · 0 评论 -
如何正确中断 一个线程?
作者:苏打水解渴如何正确中断 一个线程?1、通过线程提供的方法interrupt 通过调用此方法,系统就会给当前线程打上一个中断标记(true),默认为false,如果其他线程中调用当前线程中的此方法,表示告诉当前线程你可以停止了,当前线程也可以不理睬继续执行isInterrupted 判断当前线程是否被中断,根据当前线程中断标志位,做相关的处理Thread.interrupted() 判断线程是否被中断,此方法是个静态方法,跟isInterrupted 不同的是,在判断的之后会重.转载 2022-03-26 20:42:06 · 357 阅读 · 0 评论 -
同时面腾讯三个部门是种什么体验?好奇的斩获Offer~
作者:小黑读者在读小硕,先恭喜读者获得了腾讯的offer,下面看看都经历了什么。在2022年年初参加了腾讯的提前批实习生招聘,共被面试官从简历池里面捞了四次,当然第一次纯属偶然,是面试官看错我的面试岗位,本人投的技术运维岗位,但第一次面试官是Android开发岗,之后就是同时开始三个岗位的面试(疑惑还可以这样来),分别是一个Android开发岗,一个是云计算部门的技术运维岗,一个是云虚拟化部门的技术运维岗位,最后考虑了云虚拟化部门的技术运维岗位,并且获得了该部门的提前批Offer,接下来则是为大家.原创 2022-03-25 21:06:28 · 320 阅读 · 0 评论 -
Flutter 必知必会系列 —— 探索 Route 页面打开过程
作者:Time_sun路由操作的方式我们的路由操作基本分为三类:打开、关闭、替换。对应到 Navigator 的 API 就是 push、pop 和 replace。每一类又根据操作的方式分为:直接 和 间接,直接的方式就是直接操作 Route,间接的方式就是通过名字来操作 Route。整体的 API 方法如下:我们最常用的 API 可能就是 push 和 pop。 push 和 pop 是一对相反的操作,所以我们只跟踪 push 过程即可。添加路由我们常用的直接添加路由的方式如下:N.转载 2022-03-25 14:49:43 · 631 阅读 · 0 评论 -
Android 高工对自己过往面试的汇总总结~
1. 启动一个程序,可以主界面点击图标进入,也可以从一个程序中跳转过去,二者有什么区别?通过主界面进入,就是设置默认启动的activity。在manifest.xml文件的activity标签中,写以下代码 <intent- filter> <intent android:name=“android.intent.action.MAIN”> <intent android:name=”android:intent.category.LAUNCHER原创 2022-03-24 21:31:19 · 147 阅读 · 0 评论 -
图像存储策略:Packed与Planar
作者:满嘴跑火车的小土匪Packed与Planar在计算机图形学中,Packed和Packed是两种主要的像素数据存储方式。Packed:每个像素在内存中是连续存储的。如果每个像素有16bit,则每个像素在内存中是用两个连续的8位字节存储。如果每个像素有4bit,则每两个像素在内存中是用一个字节存储,每半个字节一个像素。如果一个像素有多个通道,则通道在内存中是相互交错的,如有三个通道的RGB:Planar:每个像素的组成,不是连续存储在一起的。而是分割在内存不同的位平面里。如果像素是单通道,也.转载 2022-03-24 14:27:14 · 1114 阅读 · 0 评论 -
技术面了三轮,HR接着谈薪,如今的BAT也太“好进“了吧...
谈谈我面试百度的真实感受吧~其实这次面试完全都是意外之举,本意是想面字节的,完全是冲着抖音事业部去的,但是兼听了同事的意见,让我向BAT这些一二线大厂都投递一下简历,别在一棵树上吊死。当时,幸亏了听得了前同事的意见,才拿到了现在的offer。不然,我或许就去小厂了,也不是说小厂不好,只是人各有志,我比较钟意能帮助我开阔技术界限的工作罢了;当然,抛开背景的面经都是在耍流氓,这并不是说我学历背景好啊,其实有工作经验通过社招进入大厂的本科生(非重点)还是蛮多的。个人建议:如果毕业院校不是特原创 2021-09-02 21:05:35 · 254 阅读 · 0 评论 -
Flutter 中的同步与异步
同步与异步程序的运行是出于满足人们对某种逻辑需求的处理,在计算机上表现为可执行指令,正常情况下我们期望的指令是按逻辑的顺序依次执行的,而实际情况由于某些指令是耗时操作,不能立即返回结果而造成了阻塞,导致程序无法继续执行。这种情况多见于一些io操作。这时,对于用户层面来说,我们可以选择stop the world,等待操作完成返回结果后再继续操作,也可以选择继续去执行其他操作,等事件返回结果后再通知回来。这就是从用户角度来看的同步与异步。从操作系统的角度,同步异步,与任务调度,进程间切换,中断,系统调原创 2021-08-15 21:13:50 · 1660 阅读 · 3 评论 -
还原腾讯的一场 30K—50K 的 Android 高工面经
一、面试的由来事情是这样的,因为跟公司发展一些想法的不同,早在四月份的时候就有了跳槽的想法,但是碍于老大的面子就一直就没有跟人事说出口,打算着等到下一次招聘季在试试跳槽。但是发生一件事终于让我忍不住了,HR不知道从哪里听的消息跟BOSS说了我想跳槽的想法,然后我就被谈话了,本来还留存在一些愧疚的心情顿时感觉烟消云散,在三十分钟的谈话结束之时,我选择了一个普通人的接受不了的想法,“裸辞”。交接完毕之后,第二天下午我便离开了待了三年之久的公司。裸辞后,我本打算着通过社招再去试试互联网大厂,但是一次偶原创 2021-08-14 20:34:01 · 388 阅读 · 1 评论 -
朋友工作两年、月薪涨到 28k ,同样是 Android 程序员为什么差距这么大?
幸之助说:“工作就是不断发现问题、分析问题、最终解决问题的过程,晋升之门将永远为那些随时解决问题的人敞开着。”对于程序员来说,要想提高薪资待遇有以下几个途径:第一,岗位晋级。这是广大程序员提高薪资待遇的重要途径之一,通过在工作中不断提升自己的研发能力而得到岗位晋级,进而提高自己的薪资待遇水平。这种提升往往以年为单位来计算,有的公司半年调整一次,有的一年调整一次。第二,承担新任务。对于年轻的程序员来说,承担新任务是提高薪资待遇的重要途径之一。往往新任务都会有对应的预算,所以承担新任务的程序员会原创 2021-08-13 20:35:37 · 286 阅读 · 2 评论 -
Android 架构师:优化到极致的App ,一般都有这几个共性点
前言性能优化仿佛成了每个程序员开发的必经之路,要想出人头地,与众不同,你还真需要下点功夫去研究Android的性能优化。比如说,从优化应用启动、UI加载、再到内存、CPU、GPU、IO、还有耗电等等,当你展开一个方面做优化的时候,是不是也曾跟我一样,一头雾水,摸不着头脑,甚至找不到方法,然后看了大量的文章,最后记住了一些别人消化过的方式方法,就觉得自己学会了,其实我现在并不这么认为,我觉得性能优化肯定有一个固定的思维框架,让我们自发的去发现问题,然后解决问题,只有做到了自己发现,这样我们才能跟别人不原创 2021-08-13 16:03:17 · 201 阅读 · 2 评论 -
征服面试官系列:View的事件冲突,原理你了解吗?有怎样的解决方案?
前面了解了【view的事件分发】,这里我们继续研究一下view的事件分发和处理,从而找到事件冲突的原因及其解决方案。一、概念认知在view的onTouchEvent(方法中)处理MotionEvent()的事件有: DOWN: 手指触摸屏幕的事件 UP: 手指离开屏幕是的事件 MOVE: 手指在屏幕上移动时的事件 CANCEL: 当事件被拦截的时候就会触发1)事件类型:在view的onTouchEvent(方法中)...原创 2021-08-12 22:09:02 · 423 阅读 · 3 评论 -
征服面试官系列: Binder 核心机制和进程间通信,你都理解了吗?
说起Android的进程间通信,想必大家都会不约而同的想起Android中的Binder机制。而提起Binder,想必也有不少同学会想起初学Android时被Binder和AIDL支配的恐惧感。但是作为一个Android开发者,Binder是我们必须掌握的知识。因为它是构架整个Android大厦的钢筋和混凝土,连接了Android各个系统服务和上层应用。只有了解了Binder机制才能更加深入的理解Android开发和Android Framework。这也是为什么无论是《Android开发艺术探索》还原创 2021-08-12 15:38:54 · 441 阅读 · 3 评论 -
以 29K 成功入职字节跳动,这份《 Android 面试笔记 》让我受益匪浅
一、前话回顾一下自己这段时间的面试经历,五月份的时候,因为资金链断裂导致我待了三年多的公司宣布了破产,刚开始离职后,我也尝试过出去面了几家,但面试过程中有好多面试题根本无从下手,结果咧,也在我的预料之内,匆匆忙忙的去面试灰溜溜的回来。中途有一家面试较好的公司打算给我offer,但是工资有点糟糕,我也没有接受。几次面试失败后,我开始了陷入了自我怀疑,好在身边朋友的劝导,最终还是走出了迷雾。后来,在痛定思痛后,决定还是面试现实,从头开始、狂补 Android 基础,花了2个多月把借助前段时间在某乎上面一原创 2021-08-11 20:19:35 · 353 阅读 · 3 评论 -
Android 开发之深入浅出 NavigationUI
概述在之前的导航系列文章中,Chet开发了一个用于跟踪甜甜圈的应用。知道什么是甜甜圈的最佳搭档吗?(难道是另一个甜甜圈?) 当然是咖啡!所以我准备增加一个追踪咖啡的功能。我需要在应用中增加一些页面,所以有必要使用抽屉式导航栏或者底部标签栏来辅助用户导航。但是我们该如何使用这些 UI 组件来集成导航功能呢?通过点击监听器手动触发导航动作吗?不需要!无需任何监听器。NavigationUI 类通过匹配目标页面 id 与菜单 id 实现不同页面之间的导航功能。让我们深入探索一下它的内部机制吧。添...原创 2021-08-11 16:22:03 · 734 阅读 · 3 评论 -
阿里一、二、三次技术面都被问到Android布局优化,全面复盘一波优化思路和优化方案
前言在Android开发中,性能优化策略十分重要。因为我认为预防永远比治愈有意义重要得多。我们不应该等到一个问题已经发生了,并且到了一定程度才想起来需要重构代码或者进行性能优化,通过早早的学习性能优化的思维和工具能避免很多问题,纠正一些不良的编码习惯,对Coder的编码能力提高具有很大的意义。 本文主要讲解布局优化,希望对你们有帮助目录1. 对性能的影响主要影响Android应用中页面显示的速度。1个页面通过递归 完成测量 & 绘制过程 = measure、layout 过程,而原创 2021-08-10 20:19:43 · 234 阅读 · 3 评论 -
Glide源码晦涩难懂?用这个角度让你事半功倍!
前言一个功能强大的框架,其背后少不了各种各样的封装,当我们一头扎进去看的时候,很容易被源码里各种各样的跳转,设计模式,封装等等,搞的云里雾里;在这种情况下,我们只能将大概流程给搞懂,但是却很容易忘记,为什么呢?因为我们还没有真正的理解它!我们没有将其转化为我们的知识点,所以隔一段时间就容易忘记了;那么我们要怎么将其转化为我们的知识点呢?不知道你有没有发现,我们人的大脑是很难一下子记住一个很长很长的东西,但是一个名词或者一个事物是可以很轻松的就记住的;下面我会将源码拆散成一个个的小原创 2021-08-10 16:04:22 · 181 阅读 · 2 评论 -
致敬Android程序员:“拿着12K的工资,做着20K的事,还要操着30K的心!”
今天,跟大家谈一个很现实的话题!你的工资有多少?在评论区打出来,统一都说月薪哈!能说年薪的,怕自己的小心脏扛不住。Android程序员:给多少工资,干多少事我们不是经常会看到一个关于西游记的“悖论”吗:为什么孙悟空初期大闹天宫的时候那么厉害?因为他自己当老板,打一群天庭的打工仔。为什么取经路上又变得不行了?作为一个打工仔,去跟一群出来自己创业的妖怪打架很多程序员想跟老板说,但又不太敢说,实际却在做的一件事。事实却是:“拿着12K的工资,做着20K的事,还要操着原创 2021-08-09 20:16:36 · 211 阅读 · 1 评论 -
两种方式封装Retrofit+协程,实现优雅快速的网络请求
目的 简单调用、少写重复代码 不依赖第三方库(只含Retrofit+Okhttp+协程) 完全不懂协程也能立马上手(模板代码) 用Kotlin的方式写Kotlin代码,什么意思呢?对比一下下面2个代码就知道了: mViewModel.wxArticleLiveData.observe(this, object : IStateObserver<List<WxArticleBean>>() { override fun onSucc.原创 2021-08-09 16:36:30 · 792 阅读 · 2 评论 -
CountDownLatch 源码分析示例
一、CountDownLatch是什么?A synchronization aid that allows one or more threads to wait until a set of operations being performed in other threads completes.CountDownLatch允许一个或多个线程等待直到在其他线程中执行的一组操作完成的同步辅助。CountDownLatch内部维护了一个计数器,调用await()会阻塞当前线程,每个线程完...原创 2021-08-08 21:03:48 · 288 阅读 · 2 评论 -
Kotlin 知识点总结:类、继承、重构、构造函数、接口
简述:kotlin 中接口的简单使用 kotlin 中 类和属性的继承 kotlin 中类的重载函数 kotlin 中修饰符的介绍 kotlin 中嵌套类 内部类的讲解 kotlin 的主构造函数和次构造函数1.接口相比于 java 的接口,kotlin 还是有点不同的1.Kotlin 的接口声明 默认都是 final 和 public 的 2.Kotlin 中的接口 和 java 1.8 接口相似,可以包含 抽象方法的定义 和 非抽象方法的实现// 接口interfac原创 2021-08-06 21:04:49 · 310 阅读 · 0 评论 -
Android 自定义多状态提示输入布局 ColorTextInputLayout
本文主要是讲解在ViewGroup中混合使用addView()和xml布局文件的方式来配置UI,自定义属性等入门知识请移步其他博客。前言因为项目需要决定自定义一个ViewGroup,但是在选定方案以后,全网搜索以后却找不到一个addView() + xml布局文件混合添加View的使用方式的讲解。能提到混合使用的文章就寥寥无几(实际上就看到一篇,被到处Ctrl CV,但这篇文章对混合使用方式也只是说了句在研究),真正讲解如何混合使用的教程,我反正是没看到的。无奈之下只能对着Goo...原创 2021-08-05 16:22:26 · 209 阅读 · 2 评论 -
Android 组件化实战
一、什么是模块化module模块,包含两种格式application和library。概念是一个module是一个小项目,相对于包来说模块更灵活,耦合更低,随意插拨,根据不同关注点将项目共享部分或业务模块抽取出来形成独立module。二、什么是组件化基于模块化,核心思想是角色的转换,在打包时是library,开启调试是application。单位是组件(module),目的是解耦与加快开发,隔离不需要关注的部分。分离独立的业务组件如微信朋友圈, 相对于模块化侧重于业务解耦三、组件化有什么好处原创 2021-08-04 15:19:33 · 241 阅读 · 1 评论 -
35岁的Android开发,失业海投35家公司简历石沉大海,我的代码生涯该如何走下去?
引言回首向来萧瑟处,归去,也无风雨也无晴。我一哥们也是做Android开发,暂且先叫他峰哥吧,从2014年到现在已经入行6年了,每天还是写一些业务代码,至今还是个单身狗,愁的头发真的都快谢顶了。虽然峰哥每天做着CRUD的工作,但每天还是做着能进BAT的梦,尤其是今年,公司扛不住疯狂裁员,峰哥也不出意外的被裁掉了。被裁后,峰哥开始海投简历,说实话,按照我对他的了解,峰哥平时就比较贪玩,上进心也不强,总是逼不得已为了高薪跳槽才去学习,到最后终究是竹篮打水一场空。想想峰哥马上就要35岁了.原创 2021-08-03 20:38:24 · 410 阅读 · 1 评论 -
Android_增量更新(BSDiff)详解
Android 增量更新,是在应用市场中非常常见的一个功能,并且很多游戏等 App 也会采用增量更新的方式升级版本,可以说是常见而且成熟的一门技术。什么是增量更新增量更新是基于 BSDiff 这个差量更新算法,基于两个 apk 字节码的差异,在服务端生成 patch 包,然后客户端通过同样的算法,把已安装的 apk 与 patch 包结合生成更新后的apk进行安装,以此减小 app 版本升级时的下载时间,提高更新效率。增量更新有什么好处?对于当前市场上大部分app,apk 体积一般在 100原创 2021-08-03 20:14:47 · 1786 阅读 · 1 评论 -
Android 架构面试官:面试不仅仅是八股文,掌握这个通过率 80%
一 . 前言前段时间,因为我们团队极度缺人,连续面了不少同学,正好借此分享一下自己对面试的一些浅见。谨代表个人观点,如果您觉得哪里说的不好,欢迎指教和批评~二 . 细节杂谈之所以是细节杂谈,说实话,是因为真的不知道可以写什么,网上关于Android面试的文章很多,大概看了几篇之后,更不知道写什么了。而根据自己这么多年来的面人和被面经验来看,发现其实有很多细节,在面试的时候都没有被好好重视起来。所以,这里针对这些细节做个总结,也希望可以对你们有所帮助。1. 准备一个良好的开场白首.原创 2021-08-02 21:07:45 · 845 阅读 · 2 评论 -
一键调用,Get Android 实现视频连麦直播的核心原理
视频连麦产品端核心步骤分析游客申请连麦/取消申请 主播同意/拒绝申请 音视频发布取消 支持很多观众观看 支持多人连麦 低延时 IM 弹幕视频连麦技术端调研emmm,大致可以分为视频采集、编码,传输,解码,渲染%¥#@¥%…………%……¥……%¥%……¥%%……%#¥%#%¥&%&……%……&%……¥?卒所以经过调研,发现市场上已经有很多成熟的商业解决方案,并且成本很低就可以接入使用。对比了很久,最后采用 anyRTC 公司的两个 SDK 来完成.原创 2021-08-02 17:34:20 · 228 阅读 · 2 评论 -
Android 10手势导航的侧滑返回效果优化策略
稳住,这里是ROM开发!Android 10 中引入了手势导航功能,向IOS看齐了一步,但是默认的这个侧滑返回效果实在是差强人意,效果如下:国内各大厂商也都对此做了优化,那么我们也来优化一下吧,效果如下:1,找到地方说的够通俗易懂了吧,要改它,就要先找到它在哪里实现的。说实话这个还真不好找,网上有说:Android 10中手势导航为了xxx放到了Launcher中,然后通过AIDL和System UI交互。。。在Launcher中找了半天也没找到。如果不是在Launc..原创 2021-08-01 20:43:48 · 930 阅读 · 0 评论 -
赶快收藏!年薪50w的 Android 高级工程师写下的面试总结
前言前段时间陆续面试了一些大公司和不少的一线大厂(例如BAT),踩了不少坑但是都给填过去了,所以加起来挂了就那么一两个,虽然挂的不多,但是还是有不少感悟和收获。这里想把那段经历记录一下,如果能对朋友们有所帮助就再好不过了。面试的过程其实也是一个自我认识和学习的过程,即便暂时没打算跳槽,隔段时间出去面一面对自己还是有些好处的:不仅可以评估一下自己在市场的价值和竞争力,同时也能了解一些新技术、更新一下自己的技术栈。而且在一个地方待久了,可能不自觉的就会陷入到一种「舒适区」,久而久之,就像温水里的青蛙原创 2021-07-30 20:56:41 · 232 阅读 · 2 评论 -
阿里一面:如何使用 AIDL 实现跨进程传输一个2M大小的文件 ?
前言分析一下,个人认为这个阿里的面试题可以细分为两个问题:如何使用AIDL进行跨进程通信? 如何传输一个2M大小的文件?问题1很简单,可以参考AIDL官方文档,这里不做过多介绍。本文主要集中火力解决问题2,讲解如何通过匿名共享内存实现跨进程双向大文件传输。AIDL简介AIDL是Android中实现跨进程通信(Inter-Process Communication)的一种方式。AIDL的传输数据机制基于Binder,Binder对传输数据大小有限制, 传输超过1M的文件就会报android原创 2021-07-30 20:53:29 · 1746 阅读 · 2 评论 -
去了字节跳动,才知道年薪 40w 的 90 后 Android 开发者有这么多?
最近脉脉职言区有一条讨论火了:“哪家互联网公司薪资最‘厉害’?”下面的评论多为字节跳动,还炸出了很多年薪 40w、50w+的 90 后们。我只想问一句,现在的年轻人都这么有钱了吗?前几天有个朋友跟我说,他从腾讯跳槽去了字节,一开始我还不理解,以为他是在走职场下坡路。但现在看来,字节跳动的薪资是真的香。按照脉脉和知乎上字节员工的说法,应届毕业生可以拿到比腾讯、阿里高 20%-30% 的薪资,而有工作经验的员工,普遍薪资水平高出业内 30% 以上。我们再看看数据,字节跳动 An.原创 2021-07-29 20:33:23 · 811 阅读 · 2 评论 -
Android事件分发及应用
事件分发事件分发是Android View体系里非常重要的知识点,熟悉事件分发之后可以自定义出各种交互复杂的View,也可以解决开源库中的各种滑动冲突bug。下边开始具体的实验和分析。创建了2个自定义的ViewGroup:GrandFatherLayout继承自LinearLayout,FatherLayout继承自RelativeLayout。创建了一个自定义View(MyButton)继承自Button。3个View中,只在dispatchTouchEvent、onInterceptTouchE原创 2021-07-29 20:29:06 · 230 阅读 · 2 评论 -
最近面试了一位五年的 Android 开发,一问三不知!还反怼我...
最近看了很多份简历,很多候选人的工作年限都不小,但是做的都是一些非常传统的项目,想着也不能通过简历就直接否定一个人,何况现在大环境越来 越难,大家找工作也不容易,于是就打算见一见。在沟通中发现,由于年限不小,他们的定位基本都是高级及以上,毕竟,年限摆在那里,面个中级也不体面。面试时我打算聊点基础的,先打开一下话题,结果发现他们都对于开发中很基础的原理问题很不清楚,比如说:Activity 的启动流程? Handler通信原理? 进程的优先级?上面几个问题没有一个是“造火箭”的吧,结果发现,原创 2021-07-28 20:23:49 · 451 阅读 · 2 评论 -
面试 100% 完全掌握:重新认识 View 的绘制流程
天空看不见云,大火球在上面肆意发光,逼着毛孔慢慢渗出汗水。我离开舒适区,跑出去面试了几次。得到的最多的反馈是不够深入。作为一个五年经验的安卓开发者,欠缺的还有很多。前言从一个view实例被创建,到展示到屏幕上,都经历了怎么样的一个流程?在安卓开发中,这似乎是一个基本的知识,应该被开发者清楚地认识明白,面试中也作为问题频频出现,然而我还是认识得不深刻。Android View的绘制流程 是View相关的核心知识点。我希望通过这篇文章学习并分享Android View绘制流程的始末。...原创 2021-07-28 17:45:12 · 333 阅读 · 2 评论 -
悄悄精通 RecyclerView
RecyclerView是一款非常强大的 widget,它可以帮助您灵活地显示列表数据。当我开始学习 RecyclerView 的时候,我发现对于复杂的列表界面有很多资源可以参考,但是对于简单的列表展现就鲜有可参考的资源了。虽然 RecyclerView 的组成结构乍一看有些复杂,但是深入理解以后您会发现它其实非常简单明了。本文会通过创建一个简单的 RecyclerView 实现一个列表来显示不同种类的花的名字。在实现的过程中,我也会将 RecyclerView 的每个部分揉碎了展现给大家,这样大家就.原创 2021-07-27 20:43:34 · 224 阅读 · 2 评论 -
Kotlin中的可空类型
1、声明一个不为空的变量// 1、声明一个不为空的变量,不可被赋值为null,且必须在后面初始化 by xiaojin on 7/24/21 9:32 PMvar name:Stringinit { name = "Tom" // 此时会被提示 Null can not be a value of a non-null type String by xiaojin on 7/24/21 9:33 PM name = null }声明一个非空变量时,如果在定义时未初原创 2021-07-27 16:46:01 · 382 阅读 · 2 评论 -
七月脱产复习上岸Byte Dance,敢问:这不比“博人传”燃?
首先,我承认,我取这样的标题确实有点夸大其词了,不过offer是真的,本意还是为了帮助更多在面试中的朋友,还请刷到文章的朋友见谅一下。一、自身情况本人19年毕业于一家普通一本,考研裂开且没有实习经验,只做过两个项目会一点Android。每天就是不断地投简历、刷面经,感觉自己都要抑郁了,最后勉强进入了一家学校合作的互联网公司写了2年的业务代码,每个月拿着9000的薪水还要被迫接受996,感觉未来没有希望。但是在今年的五月中旬看着自己的同事跳槽涨薪拿着月薪18k+的薪水,我决定做出改变,离开这里原创 2021-07-26 21:57:48 · 832 阅读 · 3 评论