
Android工程师
文章平均质量分 88
普通网友
这个作者很懒,什么都没留下…
展开
-
【Android 开发】 面试官刨根问底?教你如何避免翻车沟通表达能力
自我介绍这个环节是必不可少的,时长一般在三分钟以内,我个人通常是一分半不到就介绍完了,自我介绍之后;面试官接下来就是对一些技术基础知识的考察,面试官会根据每位候选人的背景不同,选择性的对其引导询问● 一定要谨慎对待写在简历上的东西,一定要对简历上的东西非常熟悉;因为一般情况下,面试官都是会根据你的简历来问的● 能有一个上得了台面的项目也非常重要,这很可能是面试官会大量发问的地方,所以在面试 之前好好回顾一下自己所做的项目。原创 2022-11-25 21:21:58 · 1491 阅读 · 1 评论 -
【架构师进阶之路】从哪里来,才能知道未来到哪里去
手机行业竞争异常激烈,经过几番洗牌,国内手机厂商主要是华为、小米、 OPPO、VIVO 四大公司,并且随着移动互联网增长见顶,国内 Android 开发的需求也越来越少;因为数据量很少,几百万几千万的数据量,加个索引就查询的很快了,只要自己知道如何避免索引失效,就已经打败了 90% 的队友,因为你的眼界已经变窄了。后来我发现,很多朋友也有这样的问题,老是怕面试过不了,所以干脆没有去面试。我们总是在为了生活奔波,渐渐的迷失在了其中,但我们必须清楚的知道自己从哪里来,才能知道未来要到哪里去。原创 2022-11-24 21:42:19 · 220 阅读 · 0 评论 -
临近2022年末: Android 开发者的出路在哪?转行还是进阶?
与此同时,有很多发言说 Android 的开发冷却了,不行了,没有前途了。是的,现在 Android 开发已经不再是风口,但是,这并不是说 Android 开发已经被淘汰,而是说A ndroid 开发的发展展进入了成熟期,就像 Web 技术⼀样。移动开发的新鲜⾎液也已经变少,(涉及启动优化、UI渲染优化、崩溃优化、内存优化、卡顿优化、存储优化、网络优化、耗电优化、多线程并发优化、安装包优化等内容)(涉及序列化、注解、泛型、反射、虚拟机、并发、Java IO、编译时技术、动态代理、高级数据结构与算法等内容)原创 2022-11-22 17:23:23 · 2214 阅读 · 3 评论 -
2022 Android 高级进阶学习资料与高频精选面试题精讲(圆梦大厂)
Framework 的中文意思是“框架”,在软件开发中通常指开发框架,在一个系统中处于内核层之上,为顶层应用提供接口,被设计用来帮助开发者快速开发顶层应用,而不必关心系统内核运行机制,通常 Framework 都会隐藏 main 函数等应用程序必须的组件,开发人员只需把精力放在功能代码的实现上。竞争永远都是非常残酷的,毕竟成为一个架构师不是那么容易的,一个架构师的成长来自于机会,努力及天分!最近准备跳槽,前一阵子在准备各种面试,也面了几个大厂,其中包括字节、阿里。,帮助大家搞定大厂面试的。原创 2022-11-21 20:16:13 · 853 阅读 · 0 评论 -
大厂永恒敲门砖——Android 系统启动流程详解
AMS 是 Android 中最核心的服务之一,主要负责系统中四大组件的启动、切换、调度及应用进程的管理和调度等工作,其职责与操作系统中的进程管理和调度模块相类似,它本身也是一个 Binder 的实现类,应用进程能通过 Binder 机制调用系统服务。现如今Android 工程师的竞争环境越来越激烈,**但 Andorid 开发仍然是一个刚需的工种,**行业对人才的需求从未终止,但与此同时也对我们提出了更高的要求;在大多数情况下,每个 Android 应用都在各自的进程中运行;原创 2022-11-19 21:09:55 · 593 阅读 · 0 评论 -
还在埋头敲代码?不妨学学设计模式,必能让你工作事半功倍
然后根据不同的出行方法来实现该接口}此外还需要一个包装策略的类,来调用策略中的接口= null) {} }} }以后如果再增加什么别的出行方式,就再继承策略接口即可,完全不需要修改现有的类。原创 2022-10-12 15:28:31 · 463 阅读 · 0 评论 -
一眼就看懂;Android App 开发前景介绍及学习路线规划
人员一般都能找到一份待遇不错的工作,一度也成为了现今的高薪职业;由于内容较多就只放上一个大概的大纲,需要更为详细的。这也就使得 Android 有着更加强大的优势。的追求对于开发而言都是潜在的终端客户;图片里面需要学习的内容可能有点多,需要。比自己高的应该也不少,所以不管在什么。也在现今这个社会面临着越来越大的。,即便走运进入了某家公司,想在。也不是一件轻松的事;要求度都相对较高,这也。比自己差的没有多少,而。自己的话,这样很容易。,那么很难做到真正的。原创 2022-09-26 22:24:41 · 1591 阅读 · 0 评论 -
架构师必修系列:MVC、MVP、MVVM 三者的区别介绍
架构师这个词,在我大学期间也觉得遥不可及;从来没有想到过自己有一天也会戴上这个头衔,其实,只要按照我上述的思路,按部就班,脚踏实地的不断的学习、进阶,并不难的;只看你有没有这个心罢了并不要觉得自己离架构师的路有多少,千里之行始于足下;不要觉得自己的年纪已经成长不到架构师就要到35岁退休了,学习最好的时候,就是现在!原创 2022-09-17 22:10:40 · 2202 阅读 · 1 评论 -
Flutter 跨平台框架中的 Widgets,你了解多少?
但是,除了 child 这个 Widget 之外,其他的 constraints,padding,color,alignment,transform 等都是构成 Widget 的元素!当 State 发生变化的时候,需要调用 setState() 方法来通知 flutter 框架来调用 State 的 build 方法,从而将变化反馈到用户界面中。最后,因为 UI 的实现和底层的操作系统是分离的,所以 F。,导致代码中的层级结构特别的多,可能会看的。就是,你可以使用不同的,非常基础的。原创 2022-09-09 17:55:09 · 3156 阅读 · 0 评论 -
面试高潮季来临,Android 程序猿该如何斩获大厂offer?
(这里当时是比较懵逼的,第一反应是一个主线程,然后觉得应该不止这么简单,想到应用Activity启动的话,应该还有2个 Binder 线程,可能一个管理JVM的线程,面试官接着问还有哪些?k数的定义:比位置位于这个数前面的数字都大,且比位置位于这个数后面的数字都小的数字(数组首尾的数字不用管)[4,1,3,2,7,9,8,10,12] 此数组中的k数为7和10。一面是一个电话面试,下午6点左右特地找了一个地方电话面试,6点准时电话就过来了,不得不说,这方面还是专业的,时间有点远了,依稀记得一些题目。原创 2022-09-08 22:27:49 · 422 阅读 · 0 评论 -
代码又出 Bug? 还不是 Android 性能优化不过关
融合了这些年的工作经历及对网上的资料查询和整理,最终将其整合成了一份。(应用程序编程接口) 的原因,导致对。而言,高层代码逐步走向低代码化、可视化,基础等相关知识有着一定的了解,便可以。由于他们自身的习惯总是一直调用。,比如很多人就搞不懂为什么要熟悉。的能力,才能对面试的散点知识既有。基本上已经习惯了对其成熟的。(应用程序编程接口) 进行。自己,那么你就一定会在众多。的问题的时候,他们才会看出。,只有真正的认清自己当前的。才能真正了解到你所拥有的。,其中也出现了许多的。原创 2022-09-06 22:01:25 · 242 阅读 · 0 评论 -
浅析 Android 系统稳定性中应用程序 ANR 无响应的原因
Android 稳定性问题简述Android 的稳定性是 Android 性能的一个重要指标,它也是 App 质量构建体系中最基本和最关键的一环;如果应用经常崩溃,或者关键功能不可用,那显然会对我们的留存产生重大影响所以为了保障应用的稳定性,我们首先应该树立对稳定性的正确认识原创 2022-09-06 15:51:29 · 2536 阅读 · 0 评论 -
腾讯 T10级 Jetpack 学习思维导图意外流出,还不赶紧过来围观?
2018年,Google 官方推出一个全新的开发组件工具库 Jetpack ,并将2017年所推出的一个架构组件库 Architecture Components 作为 Jetpack 的一部分纳入其中**;当然,Jetpack 并没有就此定板,此后的几年里又有**许多新的组件被加入到 Jetpack 中,未来 Jetpack 一定还会不断继续扩充原创 2022-09-05 22:03:51 · 1136 阅读 · 0 评论 -
一文读懂程序运行时产生内存泄漏之后,进行重新分配策略有哪些?
希望大家在开发时尽量避免。原创 2022-08-31 15:52:56 · 173 阅读 · 0 评论 -
浅析 Android 内存泄露的本质、原因&解决方案
在 Android 中,内存泄露的现象十分常见;而内存泄露导致的后果会使得应用Crash 本文将全面介绍内存泄露的本质、原因 & 解决方案,最终提供一些常见的内存泄露分析工具,希望你们会喜欢内存泄漏即指 程序在申请内存后,当该内存不需再使用;但却无法被释放&归还给程序的现象本文全面介绍了内存泄露的本质、原因 & 解决方案,希望大家在开发时尽量避免出现内存泄露;为了是大家能够更好的学习Android 相关的知识点,在这里特别提供一份Android 高级开发学习笔记,里面包含了这些年学习。...原创 2022-08-28 21:57:20 · 898 阅读 · 0 评论 -
面试高潮季即将来袭,Android 开发者能否在其中鲤鱼跃龙门?
一眨眼就已到了八月份月底,相信有许多不满足现状的Android 开发者;已经备战着金九银十这一面试高潮季的到来;不过,以目前的就业形势来看,今年可能是互联网行情最差的一年;寒冬之下,有许多技术水平处于初中级别的开发者也被其所淘汰;只有高级开发者依然矗立在这寒冬之下,所以唯有让自己的技术强硬起来,才能在这其中占有一席之地但不管怎么说,既然决定了面试,那么就一定要做好充足的准备;话不多说,接下来开始分享面试所必须的准备工作。......原创 2022-08-27 22:16:41 · 1137 阅读 · 0 评论 -
Flutter 作为谷歌的开源框架到底有何可取之处?我们又该如何学习?
谷歌官方解释:Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面一份代码可以同时生成 iOS 和 Android 两个高性能、高保真的应用程序Flutter 目标就是使开发人员能够交付在不同平台上都感觉自然流畅的高性能应用程序,并且兼容滚动行为、排版、图标等方面的差异Flutter 的开发语言是 Dart,如果您使用过 Java 或 JavaScript 之类的语言,则能够很快上手,甚至有一些 Flutter 应用是没有编程经验的人写的。...原创 2022-08-26 21:55:52 · 979 阅读 · 2 评论 -
Handler 知识点梳理:Handler、Looper 以及 Message 三者之间的关系
Handler、Looper以及Message之间的关系,概括性来说,Looper负责的是创建一个MessageQueue对象,然后进入到一个无限循环体中不断取出消息,而这些消息都是由一个或者多个Handler进行创建处理Messagequeue 的数据结构是什么?基础数据结构中“先进先出”的一种数据结构在 Android 中使用消息机制,我们首先想到的就是 Handler;没错,Handler是 Android 消息机制的上层接口;...原创 2022-08-26 15:48:43 · 2186 阅读 · 2 评论 -
大厂面试总被刨根问底?原来是性能优化不过关
这一难题,先要了解性能优化的特点,并抓住其关键和本质;你需要具备触类旁通的能力,才能对面试的散点知识既有深度又有广度地做进一步升华,才会让面试官眼前一亮。,希望大家通过这个思维导图和学习手册,能够提供一个好的学习方向,查漏补缺,完善自身的不足之处;,同时也出现了市场岗位情况是中低端开发人员多人竞争一个岗位,而中高级开发人员一人竞争多个岗位的现状。,辛辛苦苦写代码,为了一年涨2千块钱的工资,疯狂加班,还要被降薪,还要时刻担心被裁员,而。一款产品的从开发到面世,凝聚了无数的心血,但如果最后。...原创 2022-08-25 21:56:42 · 617 阅读 · 0 评论 -
安卓开发八年,终于明悟安卓开发未来的发展之路
我是14年毕业的,从事Android 开发行业至今已有八年的的时间,做了这么久的安卓开发工作,也因此对安卓开发所拥有的价值有着更加深入的认知,对安卓未来的发展方向,也是由最初的迷茫到现在一步步的清晰起来,所以我准备做一个对自身过去的回顾以及未来安卓发展方向的展望。原创 2022-08-24 21:59:22 · 575 阅读 · 0 评论 -
Jetpack 到底香不香?看完这篇就知道了
Google 官方解释:Jetpack 是一个由多个库组成的套件,可帮助开发者遵循最佳做法,减少样板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者集中精力编写重要的代码Jetpack 是 Google 为解决 Android 开发碎片化,打造成熟健康生态圈提出的战略规划,是Google 对 Android 未来提出的发展方向,同时它也是众多优秀Android 组件的集合而且从实际的岗位需求来看,Jetpack 也正在逐渐成为大厂必备技能;原创 2022-08-23 20:32:40 · 1048 阅读 · 0 评论 -
金九银十面试跳槽季:且看程序员如何秒变 offer 收割小能手
各位 Android 开发者们,大家好,我是 Android 永不秃头;临近金九银十了,有的在职人员想利用这波面试热潮跳槽出原来的圈子,进入大厂,从而实现弯道超车,成为人生赢家;也有的应届生也想以此为跳板进入大厂,从而走向人生巅峰;但不知道大家是否已经做好了准备,决战这波面试高潮季;话不多说,马上为大家开始分享在面试中应当注意的事项有哪些。原创 2022-08-23 14:03:50 · 210 阅读 · 0 评论 -
Android 开发学习笔记:七大知识点板块汇总
我从事 Android 开发行业也有些年头,工作期间也接触过很多 Android 开发者,因此也非常清楚程序员最大的限制并非年龄而是实力;但大多数初中级Android工程师,想要提升技能,往往是自己摸索成长;不成体系的学习效果低效漫长,而且极易碰到自己的极限,从而导致技术停滞不前也因为 在Android 开发中有很多的知识点,所以我一直以来就想要一份Android 知识点学习笔记来帮助自己查漏补缺,后来想想,近几年大家一直都在说互联网寒冬怎么怎么的,还老是谣传Android开发马上要凉了,我想我。原创 2022-08-19 22:03:35 · 1799 阅读 · 3 评论 -
Android 插件化技术应运而生出的 Apk 动态加载技术的开源框架
我们在平时的开发过程中,会经常遇到产品需求的变更或者出现bug;在传统的模式中,我们需要首先需要修改代码,然后重新打包Apk再上线,用户在打开应用的时候就会进行更新了但是这种模式有几个缺点:一是上线周期长,从修改代码到用户更新需要较长的时间,二是用户更新代价较大,每次用户更新都需要下载整个Apk包;整个Apk包包括了一个应用的所有代码,要消耗用户较多的流量,并且,如果是一些重要的更新,为了确保用户都能更新到,还需要用到强制更新,即用户打开App后如果不更新应用则退出应用,这种对用户来说是极其不友好的。原创 2022-08-19 16:06:17 · 1281 阅读 · 0 评论 -
为什么他能当架构师,而我却只能当一个基层码农?
现如今编程语言像雨后春笋般冒了出来;就目前来看当下较为流行的有Java、PHP、C、C++、Python、Go等;但在其中,稳坐榜首的仍然是Java编程语言,且在以面向对象思想占主导的应用开发中,Java往往成为其代名词Java语言的背景强大,开发者众多,一直发展都不错;后台被认为是技术核心,客户端却被认为技术含量不高,甚至小企业会让后台人员顺便开发简单的客户端,或者让后台的架构师管理客户端几个人事实上,客户端技术和后台技术的侧重点完全不同,连编程语言都不同;另外,后。...原创 2022-08-17 22:01:27 · 300 阅读 · 0 评论 -
App项目实战代码分析:ApplicationonCreate
知道了哪些地方耗时长, 我们不妨调整下Application的onCreate实现, 一般来说我们可以将这些初始化放在一个单独的线程中处理, 为了方便今后管理, 这里我用了一个InitializeService的IntentService来做初始化工作。这个空白的窗口展示跟主题相关, 那么我们是不是可以从首屏的主题入手呢?恰好有一个windowBackground的主题属性, 我们来给Splash界面加上一个主题, 带上我们想要展示的背景。写一个什么都不做的LogoSplashActivity。...原创 2022-08-17 16:50:00 · 292 阅读 · 0 评论 -
被裁员一个月后,我被面试官的一套性能优化面试题给问自闭了
裁员或许对大多数人来说只是一个宏观的字眼,但是真的发生在自己身上时,那种感受是十分悲凉的;被裁员的第一天或许感觉没有什么,但被裁员一个月后,你就不得不面对现实,没有经济来源,最终定将会入不敷出,所以。就是: **中小公司的用户量级和业务需求是达不到性能优化技术的考量的,实则就是一句话,缺乏实战经验;当时我想尝试一下自己能不能上任大厂,但却被面试官的一套性能优化的面试题给问自闭了。上述的面试题在大厂中是十分多见的,看到这里大家能够也明白;,所以无论如何也是避不开的,再者也侧面说明了你。...原创 2022-08-15 21:12:50 · 485 阅读 · 1 评论 -
面试必问-Android系统运行流程与AMS源码实战
AMS 是 Android 中最核心的服务之一,主要负责系统中四大组件的启动、切换、调度及应用进程的管理和调度等工作,其职责与操作系统中的进程管理和调度模块相类似,它本身也是一个 Binder 的实现类,应用进程能通过 Binder 机制调用系统服务。现如今Android 工程师的竞争环境越来越激烈,**但 Andorid 开发仍然是一个刚需的工种,**行业对人才的需求从未终止,但与此同时也对我们提出了更高的要求;问题2:system_server为什么要在Zygote中启动,而不是由init直接启动呢?.原创 2022-08-10 21:53:39 · 683 阅读 · 0 评论 -
应用程序与 AMS 的通讯实现——ActivityManager函数
咱们在许多和Framework解析相关的文章中,都会看到这个类,可是在上层的应用开发中,却不多直接会使用到他那么咱们为何要学习它的呢,一个最直接的好处就是它是咱们理解应用程序启动过程的基础,只有把和以及和它相关的类的关系都理解透了,咱们才能理清应用程序启动的过程今天这篇文章,咱们就来对与应用进程之间的通讯方式作一个简单的总结,这里咱们根据进程之间的通讯方向,分为两个部分来讨论:从应用程序进程到管理者进程ide函数从管理者进程到应用程序进程学习ui。...原创 2022-08-10 14:24:43 · 204 阅读 · 0 评论 -
Framework 为何被称为 Android 开发者必修?
相信大家自从接触Android开发行业以来,身边一定有不多关于Framework的声音出现,我也在这个方面被面试官多次Pass掉;由此可见 Framework 在 Android 开发者中的重要性。原创 2022-08-09 22:12:58 · 436 阅读 · 0 评论 -
看完这波 Android 面试题;助你斩获心中 offer
最近有很多的小伙伴私信问我,快要到金九银十高峰求职季了,但是却没有一个很好的面试题可以刷;看到这些信息之后,我也是想着大家能够有一份高质量的Android面试题可以参考;不至于让大家没有方向的刷题所以在近段时间我收集了各大网络平台上所收集到的面试题,并将自己在大大小小的面试中所遇到的面试题整合了起来;大家可以对照这查漏补缺,当然了,这里所列的肯定不可能覆盖全部方式,不过也希望能对即将找工作的朋友起到一些帮助!...原创 2022-08-08 20:51:20 · 261 阅读 · 0 评论 -
金九银十面试季在即,Android程序猿如何斩获offer?
通过上述的面试题,我总结在了Android大厂面试的过程中,我们需要注意的关键点以及我们需要做怎样的准备调整好心态心态是一个人能否成功的关键;如果不调整好自己的心态,是很难静下心来学习的,尤其是现在这么浮躁的社会,大部分的程序员的现状就是三点一线,感觉很累,一些大龄的程序员更多的会感到焦虑,而且随着年龄的增长,这种焦虑感会越来越强烈,那么唯一的解决办法就是调整好自己的心态,要做到自信、年轻、勤奋;这样的调整,一方面对自己学习有帮助,另一方面让自己应对面试更从容,更顺利知识储备。...原创 2022-08-05 14:02:10 · 300 阅读 · 0 评论 -
金九银十面试跳槽季;你准备好了吗?
我劝他还是算了,都不是自觉的人,天天在家反而更学不进去。除了代码,人际关系也需要沉淀,在这个公司待了那么久,看到了一些同事的优秀品质,学习、借鉴他们也需要一定的时间,如果忙着换工作,可能就失去了和同事深入交流的机会。我们在入职时可能只是一个菜鸟,但是在工作一段时间后,由于个人的努力以及业务的锻炼,水平已经有了很大的不同,自己心里觉得自己不再是菜鸟了,希望能拿更高的工资。那时候工作不顺利,正好在一个群里看到有公司招聘,就发了简历过去,面完试自己感觉良好,结果却打了脸,让人家拒了,理由是我要的工资太高了。...原创 2022-08-03 22:27:31 · 296 阅读 · 0 评论 -
面试汇总:为何大厂面试官总问 Framework 的底层原理?
互联网行业竞争也越来残酷,我们工程师只有不断地学习,提升自己的能力才更保障你拿到更好的薪水,进入理想的企业(阿里、字节、腾讯、美团 等等…)以你目前的个人能力能不能满足公司的晋升标准?如果想跳槽大厂的话面试要求有哪些?这应该是你目前比较迷茫的一部分 还有就是在你进入大厂后薪资有没有上升的空间?空间有多大?…其实原因很简单:归根结底薪资取决于你自身的技术与能力,当你的能力达到一定水平,薪资与岗位自然会上升Android程序员想要达到一定的高度,以下这两点必不可缺。...原创 2022-08-02 21:28:08 · 170 阅读 · 0 评论 -
Android Jetpack 全家桶系列(四):LiveData (原理篇)
如果等于null,在注释4处会将LifecycleBoundObserver添加到Lifecycle中完成注册,这样当我们调用LiveData的observe方法时,实际上是LiveData内部完成了Lifecycle的观察者的添加,这样LiveData自然也就有了观察组件生命周期变化的能力。一路调用过来,ObserverWrapper是不为null的,ObserverWrapper为null的情况第3小节会讲到,无论是那种情况,都会调用considerNotify方法,代码如下所示。...原创 2022-07-31 19:54:01 · 170 阅读 · 0 评论 -
Android Jetpack 全家桶系列(三): Lifecycle(原理篇)
正常来说应该在ComponentActivity的各个生命周期方法中改变Lifecycle的State,显然在ComponentActivity中没有做这些,而是将这个任务交给了ReportFragment,注释2处的将ComponentActivity注入到ReportFragment中。简单来说,实现LifecycleObserver接口的类中,注解修饰的方法和事件会被保存起来,通过反射对事件的对应方法进行调用。其内部不仅包括了添加和移除观察者的方法,还包括了此前说到的Event和State枚举。...原创 2022-07-30 19:26:06 · 241 阅读 · 0 评论 -
裁员趋势下的大厂面试:“字节跳动”
记得阿甘正传中的一句话“生活就像一盒巧克力,你永远不知道下一块是什么味道”所以裁员有很多种说法,在我们这里叫纵情~六月份集体纵情开始;最初的风声是在脉脉上听到的,我们两个老板的斗争结束之后,我也被波及了,赢的那个老板保住了自己人,我们被合并的就去顶了纵情名单经历了不甘,努力,躺平等一系列活动之后;也准备欣然接受n+1,离开这第一份工作的地方;然而又被通知自己被留下了,可能自己太便宜了,可能名单够了,也可能是新领导争取了吧原来是要我主动纵情下面就直接介绍一下在字节跳动的面试题吧。...原创 2022-07-29 19:18:20 · 813 阅读 · 0 评论 -
Android Jetpack 全家桶系列(二): Lifecycle(使用篇)
LifecycleOwner是一个接口,其内部只有一个方法getLifecycle(),getLifecycle方法用于获取Lifecycle,这样就可以将MyObserver添加到Lifecycle中,当Lifecycle的生命周期发生变化时,MyObserver就会观察到,或者说是感知到。官网用的是AndroidX,因为使用AndroidX,可能会产生一些迁移的问题,这里的举例就不使用AndroidX,而是使用lifecycleandroid.arch.lifecycle库,如下所示。...原创 2022-07-29 14:27:13 · 516 阅读 · 0 评论 -
Android Jetpack 全家桶系列(一)起始篇:Jetpack 的前世今生
谷歌仍旧不断的完善AndroidJetpack,截至到2019年8月已经有很多新加的组件并没有显示在上图中,比如CameraX等。等,随着框架越来越多,一个应用可以有多种技术选型,直接导致应用开发越来越不规范,导致做出来的应用质量参差不齐,这显然不是谷歌想看到的;ViewModel以生命周期的方式管理界面相关的数据,通常和DataBinding配合使用,为开发者实现MVVM架构提供了强有力的支持。一开始时框架很少,也没有什么规范,所有的代码都是要自己写,比如网络请求,数据库请求,数据解析等等。......原创 2022-07-28 14:27:24 · 648 阅读 · 0 评论 -
浅谈性能优化:APP的启动流程分析与优化
在APP点击启动前,他的进程不在系统中,需要系统新创建一个进程分配给它,并进行启动的情况;冷启动是一次完整的启动过程相对的按下home键的时候,app还存在一段时间,这时点击app马上就能恢复到原状态;这种启动我们称为热启动APP的启动时间,是指从用户点击APP开始,到用户看到第一个界面之间的时间;总的来说,1.T1main()函数执行前pre-main2.T2main()函数执行后至didFinishLaunch3.T3didFinishLaunch至首屏渲染完成[httpshttps。...原创 2022-07-20 20:20:03 · 159 阅读 · 0 评论