自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2019初中级Android开发社招面试解答之性能优化,安卓开发面试自我介绍

3.WebView的性能优化 ?参考回答:一个加载网页的过程中,native、网络、后端处理、CPU都会参与,各自都有必要的工作和依赖关系;让他们相互并行处理而不是相互阻塞才可以让网页加载更快:WebView初始化慢,可以在初始化同时先请求数据,让后端和网络不要闲着。常用 JS 本地化及延迟加载,使用第三方浏览内核后端处理慢,可以让服务器分trunk输出,在后端计算的同时前端也加载网络静态资源。脚本执行慢,就让脚本在最后运行,不阻塞页面解析。同时,合理的预加载、预缓存可以让加载速度的瓶颈更.

2022-01-14 11:54:36 267

原创 2020阿里巴巴,字节跳动,京东,2021我的Android大厂面试之旅

Android中常用的类加载器有两种,DexClassLoader和PathClassLoader,它们都继承于BaseDexClassLoader。区别在于调用父类构造器时,DexClassLoader多传了一个optimizedDirectory参数,这个目录必须是内部存储路径,用来缓存系统创建的Dex文件。而PathClassLoader该参数为null,只能加载内部存储目录的Dex文件。所以我们可以用DexClassLoader去加载外部的apk文件,这也是很多插件化技术的基础。2、 Servic

2022-01-12 12:11:10 259

原创 2020金九银十完美收官,字节4面斩下2-2Offer,入职就是35K16薪

亮点: 准备亮点,回答问题的时候不用全部回答上来,但是在面试的过程中一定要有亮点(不然你就会得到反馈,面试官说你还行,但是没有过~) 我一般会准备几个点,每个点都保证可以睡上半小时。另外一定要了解得很深入,并且能够用自己的话流畅的表达出来!!(我准备的几点,性能优化、工程化、缓存、http)内推: 最好找人内推,成功率会提高一些练手: 先找几家不太想去的公司(规模差不多)练练手,如果第一次面试就去心仪的公司面试,淘汰率会非常高。**心态:**心态很重要,面试不过很正常,不证明你不优秀,只是不适合,总结

2022-01-12 12:09:45 2797

原创 2020至2021年Android开发面试习题整理,持续更新中,移动终端软件开发颜色演示

在 Java 中,你只能继承一个类,但可以实现多个接口。所以一旦你继承了一个类,你就失去了继承其他类的机会了。接口通常被用来表示附属描述或行为如:Runnable、Clonable、Serializable 等等,因此当你使用抽象类来表示行为时,你的类就不能同时是 Runnable 和 Clonable(注:这里的意思是指如果把 Runnable 等实现为抽象类的情况),因为在 Java 中你不能继承两个类,但当你使用 接口时,你的类就可以同时拥有多个不同的行为。在一些对时间要求比较高的应用中,倾向于使

2022-01-12 12:08:20 252

原创 2020疫情过后,我面试经历-通过五轮面试斩获offer阿里实习生亲述(内有面试题)

自己实践实践是上面流程中最重要的一环,这个环节我下一篇文章会详细说明,希望大家能稍微期待一下哦!阿里一面一面是在上午9点多接到支付宝的面试电话的,因为很期望能够尽快接到阿里的电话,所以非常兴奋。电话接通之后还是非常紧张的,毕竟是第一次这样的面试。**▮ **中间面的问题有些记不清了,下面列出了一面问到的问题:自我介绍下自己,不超过3分钟(实际上我的自我介绍不到一分钟)你感觉比本科阶段自己进步了多少,有哪些进步研究生期间最大的进步是什么你觉得你适合从事哪个方向的开发synchro

2022-01-12 12:06:56 192

原创 2020Android高级进阶学习资料与高频精选面试题精讲,已有5w人阅读

书籍推荐历时半年,我整理了这份市面上最全面的Android进阶架构师之路的核心知识,同时也包括了面试时面试官必问的知识点,其中包括了:Java知识点汇总,Android知识点汇总,Android扩展知识点,Android开源库源码分析,设计模式汇总,常见面试算法题汇总。一共六大板块,希望对大家有帮助!由于pdf文档里的细节内容实在过多所以只编辑了部分知识点的章节粗略的介绍下,每个章节小节点里面都有更细化的内容!以下就是部分章节目录,由于头条的篇幅限制目录上的详细讲解也无法一一列出,文末底下有获取以下

2022-01-12 12:04:05 1591

原创 2020Android面试心得,已拿到offer,这是一份面向Android开发者的复习指南

3.是不是任何线程都可以实例化Handler?有没有什么约束条件?4.Looper.loop是一个死循环,拿不到需要处理的Message就会阻塞,那在UI线程中为什么不会导致ANR?5.Handler.sendMessageDelayed()怎么实现延迟的?结合Looper.loop()循环中,Message=messageQueue.next()和MessageQueue.enqueueMessage()分析。五、AsyncTask源码分析优劣性分析,这个网上一大堆,不重述。六、如何保证Serv

2022-01-12 12:02:40 167

原创 2019年百度Android面试题-公共技术点之-View-绘制流程,Android面试复习重点

final int childWidthMeasureSpec = getChildMeasureSpec(parentWidthMeasureSpec,// 获取 ChildView 的 widthMeasureSpecmPaddingLeft + mPaddingRight, lp.width);final int childHeightMeasureSpec = getChildMeasureSpec(parentHeightMeasureSpec,// 获取 ChildView 的 height

2022-01-12 12:01:16 1837

原创 2019AndroidBAT-字节跳动74道高级面试第二篇,h5开发移动端

1.为什么要分新生代和老年代?2.新生代为什么分一个Eden区和两个Survivor区?3.一个Eden区和两个Survivor区的比例为什么是8:1:1?现在还不能解释为什么,但这几个问题都是垃圾回收机制所采用的算法决定的。 所以问题转化为,是何种算法?为什么要采用此种算法?###二.可回收对象的判定讲算法之前,我们先要搞清楚一个问题,什么样的对象是垃圾(无用对象),需要被回收? 目前市面上有两种算法用来判定一个对象是否为垃圾。1. 引用计数算法给对象中添加一个引用计数器,每当有一个地方.

2022-01-12 11:59:51 148

原创 20190619-James-快速鸟瞰并发编程, 呕心沥血整理的架构技术(第3篇)

| newCachedThreadPool | 返回ExecutorService对象,该对象持有不同大小的线程池。 || newSingleThreadScheduledExecutor | 返回ScheduledExecutorService对象,只返回1个线程 。 || newScheduledThreadPool | 返回一个ScheduledExecutorService核心线程集。 || n

2022-01-12 11:58:26 1544

原创 2020年最新阿里、字节、腾讯,Android后端社招面试经历

5.两个Activity之间跳转时必然会执行的是哪几个方法?6.横竖屏切换时Activity的生命周期(★★★★)7.如何将一个Activity设置成窗口的样式8.如何退出Activity?如何安全退出已调用多个Activity的Application?9.Activity的四种启动模式,singletop和singletask区别是什么?一般书签的使用模式是singletop,那为什么10.不使用singletask?11.Android中的Context, Activity,Applictio

2022-01-11 12:55:27 122

原创 2020展望Android原生开发的现状,快速开发平台

本篇文章转载自ronaldong的博客,是对英文博客的一篇翻译,分享了国外Android开发者对目前Android开发现状的一些整理和思考,相信会对大家有所帮助!原文地址:https://www.techyourchance.com/the-state-of-native-android-development-november-2019/译文地址:https://juejin.im/post/5e0eb606f265da5d0d435b88/   前言  &

2022-01-11 12:54:02 250

原创 2020关于面试字节跳动,我总结一些面试点,希望对最近需要面试的你们一些帮助

1.加载:获取类的二进制字节流;生成方法区的运行时存储结构;在内存中生成 Class 对象2.验证:确保该 Class 字节流符合虚拟机要求3.准备:初始化静态变量4.解析:将常量池的符号引用替换为直接引用5.初始化:执行静态块代码、类变量赋值类加载时机:1.实例化对象2.调用类的静态方法3.调用类的静态变量(放入常量池的常量除外)类加载器:负责加载 class 文件分类:1.引导类加载器 - 没有父类加载器2.拓展类加载器 - 继承自引导类加载器3.系统类加载器 - 继承自拓展类

2022-01-11 12:52:37 181

原创 2020-更新---腾讯-Android-面试-(已拿到月薪22K-offer)

从18年毕业至今,就职过两家公司,大大小小项目做了几个,非常感谢我的两位老大,在我的android成长路上给予我很多指导,亦师亦友的关系。从年前至今参加面试了很多公司,也收到了几家巨头的offer,还有其他公司的。总结下经验,也是对过去的一个回顾和总结吧。一、简历网上有很多对程序员简历的一些指导,这里就不重述,大家可以搜下网上其他大神的总结,结合自身情况修改下。我有几点建议:1.尽量不要花哨,程序员和设计师或者产品运营还不一样,我们的简历成功与否决定权还是在技术面试官那,而他们看重的是你的项目经验

2022-01-11 12:51:12 131

原创 2020-更新---腾讯-Android-面试-(已拿到月薪22K-offer)(1)

网上有很多对程序员简历的一些指导,这里就不重述,大家可以搜下网上其他大神的总结,结合自身情况修改下。我有几点建议:1.尽量不要花哨,程序员和设计师或者产品运营还不一样,我们的简历成功与否决定权还是在技术面试官那,而他们看重的是你的项目经验内容和技术等描述。2.技能描述这块尽量只写你懂得而且理解深刻的,可以适当加入一些新技术或流行框架,不过这块需要理解,没来得及看源码的可以看看大神们对它的总结,网上一大堆。3.项目经验这块尽量加入关键词,比如使用了什么技术、用到哪些设计模式、优化数据对比、扩展总结之类的

2022-01-11 12:49:46 117

原创 2020-Android大厂(字节跳动,腾讯,安卓binder机制详解

我在大三的时候,没有参加春招,也没有参加秋招,我大三 三月份的时候在实习僧上投了几个简历,发现面的都很水,原来我在大学的时候,成绩还算ok,编程能力在班里也是前几的,但是说实话,找工作经验真的不足吧,我编程的时候,没关注过JVM原理,也没关注过Java里面一些实现机制,一些【源码】也没看过,这个时候,我就知道还需要努力了。 我找了个几个人的小公司,先干着了,边干边复习吧,补一补基础,后来,跳槽到了58企服,一个a轮的创业公司,干的也很happy,然后就放弃秋招了,然后今年三月份,公司取消了移动端开发,我就.

2022-01-11 12:48:21 451

原创 2020-Android-面试重难点(万字篇),android开发入门视频教程

这是AsyncTask的一个限制,而且对于2.3以前的版本无法解决。如果你的应用需要大量的后台线程去执行任务,那么你只能放弃使用AsyncTask,自己创建线程池来管理Thread,或者干脆不用线程池直接使用Thread也无妨。不得不说,虽然AsyncTask较Thread使用起来方便,但是它最多只能同时运行5个线程,这也大大局限了它的实力,你必须要小心设计你的应用,错开使用AsyncTask的时间,尽力做到分时,或者保证数量不会大于5个,否则就会遇到上次提到的问题。可能是Google意识到了AsyncTa

2022-01-11 12:46:56 223

原创 2020 Android面试,Android2021面试题

3.在团队合作中,代码规范性2.抽象类的意义1.为子类提供一个公共的类型2.封装子类内重复内容(成员变量和方法)3.定义有抽象方法,子类虽然有不同的实现,但该方法的定义是一致的。3.哪些情况下的对象会被垃圾回收机制处理掉1.引用计数法2. 可达性分析算法4.进程和线程的区别根本区别:进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位在开销方面:每个进程都有独立的代码和数据空间(程序上下文),程序之间的切换会有较大的开销;线程可以看做轻量级的进程,同一类线程共享代码和数据空

2022-01-11 12:42:42 139

原创 8年老Android开发谈:Context都没弄明白凭什么拿高薪?

差值器估值器Android中数据存储方式Android基础知识点(二)Android源码相关分析Android动画框架实现原理Android各个版本API的区别Requestlayout,onlayout,onDraw,DrawChild区别与联系invalidate和postInvalidate的区别及使用Activity-Window-View三者的差别谈谈对Volley的理解如何优化自定义View低版本SDK如何实现高版本api..

2022-01-10 12:11:21 191

原创 802,android开发入门到精通

首先802.11 是一种无线局域网标准。802.11 a/b/g/n/ac 都是由802.11 发展而来的。不同的后缀代表着不同的物理层标准工作频段和不同的传输速率,也就是说它们的物理层和传输速度不同。| 协议 | 频率 | 信号 | 最大传输速率 || — | — | — | — || 802.11 | 2.4Ghz | FHSS 或 DSSS | 2Mps || 802.11a | 5GHz | OFDM | 54Mps || 802.11b | 2.4GHz | HR-DSSS | 11M

2022-01-10 12:09:56 307

原创 7年老Android一次操蛋的面试经历,Android开发中常见的一些问题面试专题

我内心:(白眼)描述了我北京一家公司的社交APP,介绍功能,实现,用到的技术,设计思想等等。面试官:说一下项目中的性能优化怎么做的我:首先是启动优化,MultiDex 分包机制,dex分包预加载等等。稳定性–内存优化,流畅–卡顿优化等等,反正我整理的这份一线互联网大厂高频面试知识点资料里关于性能优化的全给他讲了一遍。(文末会无偿分享给大家)面试官:(有点懵13了,没想到我能讲这么多)内存泄漏,还有哪些检测工具?LeakCanary 的原理知道吧?答:利用Application#regi.

2022-01-10 12:08:31 120

原创 5年内被辞退3次,35岁程序员该何去何从?百度,嵌入式音视频开发

工作之外你做什么?本文汇总了来自阿里云云栖社区有关:程序员如何自我学习成长,博友的精选答案,供大家参考:社区昵称 werelone 的回答:我在上大二,程序员修养什么的谈不上,但是我觉得自学是一件很开心的事。去网上寻找各种资源资料,去qq群不厌其烦地问一些“白痴”问题,去知乎、csdn、sf上面看各路大神的吐槽。我觉得对一门技术的研究,不仅仅停留在学会使用,更多的是了解它的不足,它的局限性,它坎坷的发展历史,它背后的工作团队,以及它面临没落时的无奈。代码永远都不会无聊,我希望能不忘初心走完大学。.

2022-01-10 12:07:06 5371 1

原创 5G音视频时代,还不学NDK开发吗?原地踏步就会被时代淘汰

b. 在Gradle的 gradle.properties中添加配置android.useDeprecatedNdk=true// 对旧版本的NDK支持c. 在Gradle的build.gradle添加ndk节点至此,将Andorid Studio的项目 与 NDK 关联完毕下面,将真正开始讲解如何在项目中使用NDK步骤3:创建本地代码文件即需要在Android项目中调用的本地代码文件此处采用 C++作为展示test.cppinclude <jni.h>in

2022-01-10 12:05:41 208

原创 40 岁的中年失业人怎么活下去?,网易资深Android架构师

幸运的是幸好还是去年,倘若是今年,结局更加难以想象。———————————————————————作为一个40的人,能有面试机会是格外的珍惜,也分外的诚恳。没什么豪言壮语,雄心大志。没有狼性,社会把中年人打磨成了听话的舔狗。感谢马爸爸旗下公司,给了我为数不多机会中一个,而且还是个相当好的位置,可惜各种原因未能继续。最终机缘巧合下有了现在的工作,收入相对以前持平,但足够持久到十几二十年后。—————————————————————————评论有灌鸡汤的,有冷嘲热讽的,也有鼓励支持的。不管怎样,都谢

2022-01-10 12:02:51 785

原创 BIO、NIO、AIO你会用了吗

同步(synchronize)、异步(asychronize)是指应用程序和内核的交互而言的.同步:指用户进程触发IO操作等待或者轮训的方式查看IO操作是否就绪。举例:我们烧水,等待水烧开饮用。我们从开始烧水到水烧开,我们就一直等待或者过段时间来看下水烧开没有。这就是同步。异步:当一个异步进程调用发出之后,调用者不会立刻得到结果。而是在调用发出之后,被调用者通过状态、通知来通知调用者,或者通过回调函数来处理这个调用。使用异步IO时,Java将IO读写委托给OS处理,需要将数据缓冲区地址和大小传给OS,

2022-01-05 18:12:44 170

原创 6面蚂蚁,面试官被窝唬住了,居然开了36K

第一部分:Java基础-中级-高级第二部分:开源框架(SSM:Spring+SpringMVC+MyBatis)第三部分:性能调优(JVM+MySQL+Tomcat)第四部分:分布式(限流:ZK+Nginx;缓存:Redis+MongoDB+Memcached;通讯:MQ+kafka)第五部分:微服务(SpringBoot+SpringCloud+Dubbo)第六部分:其他:并发编程+设计模式+数据结构与算法+网络一面====================.

2022-01-05 18:11:18 704

原创 6年开发,五面阿里,耗时3月系统梳理Java全栈知识点

线程状态与转换线程安全与同步机制:volatile vs synchronized vs Lock(ReentrantLock)volatile底层原理synchronized底层原理及其锁的升级与降级Lock(ReentrantLock)底层原理ThreadLocal线程通信线程池(底层实现)死锁的出现场景、定位以及修复CAS 与 Atomic*类型实现原理AQS:并发包基础技术Java并发包(java.util.concurrent及..

2022-01-05 18:09:53 119

空空如也

空空如也

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

TA关注的人

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