自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 历年阿里巴巴面试题集,蚂蚁金服Android面经!

早在2017年我们就建了第一个进击BAT的Android开发进阶交流群,两年期间很多群友都分享了自己的Android面试经历。其中就有很多群友已经斩获蚂蚁金服,天猫,高德,盒马等阿里系offer收集反馈的面经资料比较乱,最近疫情期间终于空出大量时间,我们进行了分类,循序渐进,由基础到深入,由易到简。将内容整理成了五个章节、计算机基础面试题、数据结构和算法面试题、Java面试题、A...

2020-03-11 20:15:21 1554 1

原创 2020最新Android开发中高级进阶书籍推荐

很多Android开发小伙伴进阶学习都是卖一堆技术书籍。这里整理了目前最主流的中级,高级进阶书籍。感兴趣可以收藏一下,作为一个参考~一,中级进阶推荐看一下以下这几本书:中级进阶书籍相信大家很熟悉,或者桌上摆着其中几本。就不详细介绍了;《Android从入门到精通(附光盘)》 明日科技 编《第一行代码2 Android(第二版)》 郭霖 著《Android开发进阶 从小工到专...

2020-02-21 23:43:04 1861 1

原创 深入解析RecyclerView 源码——绘制流程、缓存机制、动画等

前言本文打算对 RecyclerView 做一个详细完整的、重点突出的分析与总结,因为 RecycelrView 源码很长(光 RecyclerView 文件本身就有 13000+ 行),因此文章也会很长,但一通分析下来后会发现,RecyclerView 虽然是 ListView 的加强版,除了在使用方法上类似之外,关键源码上也是非常类似的。RecyclerView 的使用可以参考大神的文章:Android RecyclerView 使用完全解析 体验艺术般的控件RecyclerView 和 Lis

2020-11-24 17:29:14 5

原创 腾讯Android高工面试:为什么要使用SparseArray和ArrayMap替代HashMap?

背景在Android开发中,性能优化是一个非常重要的模块,其中数据结构的性能优化是相当重要的,对于常用的HashMap来说,官方推荐我们使用SparseArray和ArrayMap替代它。Java为数据Java为数据结构中的映射定义了一个接口java.util.Map,此接口主要有四个常用的实现类,分别是HashMap、Hashtable、LinkedHashMap和TreeMap,类的继承关系如图所示:首先我们来介绍一下HashMap,了解它的优缺点,然后再对比一下其他的数据结构以及为什么要替代.

2020-11-23 09:58:01 28

原创 Android面试必问的Activity,初阶,中高阶问法,你都掌握了吗?(要求熟读并背诵全文)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cXs1wGDx-1605843173409)(https://upload-images.jianshu.io/upload_images/24142630-84668ed4a42819ee.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]Activity是我们常用App开发中最重要的组件,主要用于展示界面和用户交互。本文分为三个部分:Activity源码和常见

2020-11-20 11:33:34 232

原创 字节高工面试灵魂7问:Android架构组件—ViewModel这些知识点一定要掌握!

前言今天跟大家分享的是网友提供的一道字节跳动的面试真题,请看原题:ViewModel 是什么?ViewModel 为什么被设计出来,解决了什么问题?说说ViewModel原理。ViewModel怎么实现自动处理生命周期?为什么在旋转屏幕后不会丢失状态?为什么ViewModel可以跟随Activity/Fragment的生命周期而又不会造成内存泄漏呢?ViewModelScope了解吗?解答ViewModel是什么?ViewModel是MVVM架构的一个层级,用来联系View和mo.

2020-11-19 11:13:54 28

原创 面试官:任务栈?返回栈?启动模式?傻傻分不清楚?年轻人耗子尾汁吧

今天来唠唠 任务栈 和 返回栈 。作者:秉心说TM任务栈?返回栈?关于 任务栈和返回栈,我看了 N 篇博客,说的最清楚的除了 重学安卓 ,那就非 官方文档 莫属了。其实大多时候,很多模糊不清的基本概念,从官方文档都可以轻松的得到你想要的答案。官方文档中这一节的标题叫做 Understand Tasks and Back Stack ,Task 就是我们常说的 任务栈,Back Stack 就是返回栈。任务栈很好理解,Activity 们是存在一个栈结构中的,后进先出,这也很符合实际的使用场景。

2020-11-18 14:21:46 44

原创 渣渣二本的辛酸面试之路:从深圳到杭州,从外包到蚂蚁金服,4年小Android的心路历程

写在开头笔者16年于长沙一个普通二本,毕业后去了满地都是机会的深圳。第一份工作是一家外包公司,主要业务是电商和电子支付信息安全方面的。一年后跳槽到华润旗下一个子公司做金融。至今已工作4年。大家都知道,对于跟我一样没有名校背景,也没有大厂出身的程序员来说,面试唯一的加分项就只有某一方面的技术深度了。所以我也建议各位小伙伴也跟我一样,选择一个自己感兴趣的,或者比较自信的方向,不断的钻研深入。众所周知,2020年的冬天非常煎熬,疫情肆虐,大批的互联网公司都在裁员甚至倒闭。年后的金三银四跳槽季竞争愈发激烈,岗.

2020-11-17 15:40:37 617

原创 牛笔了!阿里P8大佬熬夜15天,把所有Android第三方库整理成了PDF

缘起随着互联网企业的不断发展,产品项目中的模块越来越多,用户体验要求也越来越高,想实现小步快跑、快速迭代的目的越来越难,还有65535,应用之间的互相调用等等问题,插件化技术应用而生。如果没有插件化技术,美团、淘宝这些集成了大量“app”的应用,可能会有几个g那么大。所以,当今的Android移动开发,不会热修复、插件化、组件化,80%以上的面试都过不了。阿里P8大佬每天熬夜到凌晨一两点,花了将近半个月时间将Android热修复框架、插件化框架、组件化框架、图片加载框架、网络访问框架、RxJava响应

2020-11-16 11:28:39 45

原创 腾讯新闻Android高工二面:说说Android动态换肤实现原理吧

换肤分为动态换肤和静态换肤静态换肤这种换肤的方式,也就是我们所说的内置换肤,就是在APP内部放置多套相同的资源。进行资源的切换。这种换肤的方式有很多缺点,比如, 灵活性差,只能更换内置的资源、apk体积太大,在我们的应用Apk中等一般图片文件能占到apk大小的一半左右。当然了,这种方式也并不是一无是处, 比如我们的应用内,只是普通的 日夜间模式 的切换,并不需要图片等的更换,只是更换颜色,那这样的方式就很实用。动态换肤适用于大量皮肤,用户选择下载,像QQ、网易云音乐这种。它是将皮肤包下载到本地.

2020-11-13 14:48:56 181

原创 又是抓脑壳的一天!Thread线程也会OOM?

本文首发掘金:Thread也会OOM吗?作者:究极逮虾户OOM其实是一个比较常见的异常了,但是不知道各位老哥有没有见过这个异常。java.lang.OutOfMemoryError: pthread_create (1040KB stack) failed: Try again at java.lang.Thread.nativeCreate(Thread.java) at java.lang.Thread.start(Thread.java:1076) at java.util.concu.

2020-11-12 22:19:02 42

原创 源码解析:可能是全网最细的Android 资源加载机制剖析,墙裂建议收藏

前言上一篇文章,讲到了Android中进程的启动和一个Activity的创建到显示流程,现在本篇要分析的是在Android中资源的装载机制,例如字符串资源,图片资源是如何被装载的。这里将从字符串和图片两种类型资源展开分析,同时对于后面所利用的资源装载的内容也会做简单的分析。Resources源码剖析对于资源的装载机制,这里核心的几个类是Resources,ResourcesImpl,AssetManager。Resources算是对于ResourcesImpl的一个代理,Resources的所有调用

2020-11-10 22:15:38 31

原创 QQ音乐Android端120万行代码,编译耗时是怎样优化的

介绍QQ音乐团队在增量编译组件研发上的探索与实践。原文:QQ音乐Android编译提速之路1. 序言工程编译,是Android应用开发工作中的重要一环。而随着工程代码量膨胀,编译耗时也越来越长,拖慢了开发效率。这个问题在中大型团队中并不少见。以QQ音乐为例,Android工程代码量达到120万行以上,每修改一行代码,都要等待4分钟以上才能在手机上看到改动效果。为了应对这个问题,我们自研推出了一款增量编译组件。经过一年时间的不断优化,组件已经可以支撑团队内的日常开发工作,有效提升了本地开发场景..

2020-11-09 14:55:47 66

原创 Android高工面试(难度:四星):为什么不能使用 Application Context 显示 Dialog?

本文首发掘金:为什么不能使用 Application Context 显示 Dialog?作者:秉心说TM目录为什么不能使用 Application Context 显示 Dialog?谁创建了 Token?WMS 是如何拿到 Token 的?WMS 是如何校验 Token 的?为什么不能使用 Application Context 显示 Dialog?在上一篇文章 扒一扒 Context 中遗留了一个问题:为什么不能使用 Application Context 显示 Dialo.

2020-11-05 17:01:00 17

原创 字节头条部Android二面:说说Android动态换肤实现原理吧

换肤分为动态换肤和静态换肤静态换肤这种换肤的方式,也就是我们所说的内置换肤,就是在APP内部放置多套相同的资源。进行资源的切换。这种换肤的方式有很多缺点,比如, 灵活性差,只能更换内置的资源、apk体积太大,在我们的应用Apk中等一般图片文件能占到apk大小的一半左右。当然了,这种方式也并不是一无是处, 比如我们的应用内,只是普通的 日夜间模式 的切换,并不需要图片等的更换,只是更换颜色,那这样的方式就很实用。动态换肤适用于大量皮肤,用户选择下载,像QQ、网易云音乐这种。它是将皮肤包下载到本地.

2020-11-04 10:50:39 50

原创 泪目!阿里大佬国庆8天花了50个小时,整理出这份18万字Android-360°性能优化实战解析

缘起经过近十年的发展,Android技术优化日新月异,如今Android 10.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS。到了各大厂商手里,改源码、自定义系统,使得Android原生系统变得鱼龙混杂,然后到了不同层次的开发工程师手里,因为技术水平的参差不齐,即使很多手机在跑分软件性能非常高,打开应用依然存在卡顿现象。APP进行性能优化已成为开发者该有的一种综合素质,也是开发者能够完成高质量应用程序作品的保证。阿里P8大佬,没错还是那个大佬,国庆花了整整一星期时间,

2020-11-03 11:40:50 365 8

原创 Android-高工面试真题:说说你对FPS的理解?如何检测应用的FPS?

本文首发于掘金:面试官:如何监测应用的 FPS ?作者:秉心说TM目录什么是 FPS?从 View.invalidate() 说起承上启下的 “编舞者”如何监测应用的 FPS?最后什么是 FPS ?即使你不知道 FPS,但你一定听说过这么一句话,在 Android 中,每一帧的绘制时间不要超过 16.67ms。那么,这个 16.67ms 是怎么来的呢?就是由 FPS 决定的。FPS,Frame Per Second,每秒显示的帧数,也叫 帧率。Android 设备的 FPS 一般.

2020-11-02 17:26:46 24

原创 深入底层 | 字节Android高级岗: Activity间传递对象为什么要序列化?序列化有哪几种方式?它们有什么区别?

前言我们都知道进行Android 开发的时候,跳转到Activity和Fragment的时候,传递对象是通过Intent或者bundle 进行传递。当这个对象没有实现序列化的时候 当你通过Inetnt传递的时候会报红,系统会提示你将这个对象实现序列化。不同 Activity 之间传输数据可以通过 Intent 对象的 putExtra 方法传递,对于 java 的八大基本数据类型(char int float double long short boolean byte)传递是没有问题的,但是如果传递.

2020-10-29 21:30:15 28

原创 朝花夕拾 | 19张图带你深入理解 Android 事件分发机制

注:这是篇讲Android事件分发的老文章,原文转自Kelin,放在现在依然非常经典、易懂。所以翻出来重新转载一波,相信对事件分发理解还不是深入的小伙伴们有很大的帮助。在Android开发中,事件分发机制是一块Android比较重要的知识体系,了解并熟悉整套的分发机制有助于更好的分析各种点击滑动失效问题,更好去扩展控件的事件功能和开发自定义控件,同时事件分发机制也是Android面试必问考点之一,如果你能把下面的一些事件分发图当场画出来肯定加分不少。废话不多说,总结一句:事件分发机制很重要。Andr.

2020-10-28 16:54:19 9

原创 Android高工面试:如果需要实现一个 路由(Router)框架,讲讲你的思路

本文首发公众号:徐公码字Android 开发中,组件化,模块化是一个老生常谈的问题。随着项目复杂性的增长,模块化是一个必然的趋势。除非你能忍受改一下代码,就需要六七分钟的漫长时间。模块化,组件化随之带来的另外一个问题是页面的跳转问题,由于代码的隔离,代码之间有时候会无法互相访问。于是,路由(Router)框架诞生了。目前用得比较多的有阿里的 ARouter,美团的 WMRouter,ActivityRouter 等。今天,就让我们一起来看一下怎样实现一个路由框架。 实现的功能有。基于编译时注.

2020-10-27 21:38:45 44

原创 双非渣本小Android四年磨一剑,秋招大厂(字节、腾讯、B站)面经分享

前言笔者2016年双非不知名小本科毕业,到今年6月已经开发4年啦,毕业后一直辗转于各种小公司做小开发。但是闲鱼也有翻身梦,一直想去大厂康康。就蹭蹭,不进去也行啊。于是计划几年年初金三银四的时候去碰碰运气,正巧碰上疫情,计划也就被搁置了。一来是怕死。出门都战战兢兢的,别说各个城市跑面试了。二是各种公司都在裁员,只有大厂还在招少部分人,大厂的门槛怕是都要被踩烂了。疫情稳定下来后,便开始慢慢的为跳槽做准备了,到金九银十的时候,先去面了些不大不小的公司,最后才选择了几家心仪的大厂投简历、面试的,前段时间成功入职

2020-10-23 09:36:24 249

转载 好文推荐 | volatile关键字在Android中到底有什么用?

原文转自郭神公众号:https://mp.weixin.qq.com/s/WtMeB-4sXOYQtvYKUx6c5Q通俗易懂的描述,简单的代码案例,便能轻松为你拿下这个知识点缘起上周六分享了一篇关于Java volatile关键字的文章,发布之后有朋友在留言里指出,说这个关键字没啥用啊,Android开发又不像服务器那样有那么高的并发,老分享这种知识干啥?让我意识到有些朋友对于volatile这个关键字的理解还是有误区的。另外也有朋友留言说,虽然知道volatile关键字的作用,但是想不出在An

2020-10-21 21:28:24 19

原创 还在为大厂app抓不到包而犯愁吗?原因很简单,解决方法更简单!

抓不到请求的现象我们经常在wifi设置中 设置代理到我们的pc http代理软件上,多数情况下,此时我们开启的app流量都可以在代理软件上看到,比如charles , fiddler等等。 但是细心的人会发现 某些大厂的app 某些请求 在这些 http代理软件上就是抓不到, 给人的感觉就是 流量没从代理软件走一样。抓不到请求的原因大家都知道 http协议下层是tcp协议,tcp协议都是内置在操作系统里面的,我们最多只能使用tcp协议对外暴露的socket接口来进行编程, 我们是无法修改操作系统本身.

2020-10-20 17:46:31 101

原创 Kotlin 编程核心基石—高阶函数

前言1. 高阶函数有多重要?高阶函数,在 Kotlin 里有着举足轻重的地位。它是 Kotlin 函数式编程的基石,它是各种框架的关键元素,比如:协程,Jetpack Compose,Gradle Kotlin DSL。高阶函数掌握好了,会让我们在读源码的时候“如虎添翼”。本文将以尽可能简单的方式讲解 Kotlin 高阶函数,Lambda 表达式,以及函数类型。在本文的最后,我们将自己动手编写一个 HTML Kotlin DSL。前期准备将 Android Studio 版本升级到最新将我们.

2020-10-19 16:19:44 59

原创 解锁!95%的Android程序员做性能优化时,存在的五大误区和两大疑点!

本文翻译自:Busting Android performance myths,作者:Calin Juravle,译文「Meandni」。近年来,社区充斥着关于 Android 性能优化的各种误区,本文本着误区终结者的精神,使用具体的性能检测工具,结合真实案例仔细分析这些情况,并对比它们的测试结果,也会聚焦 Android 开发者平时在编码过程的实际场景,用实际数据告诉你在实际编码之前请,一定要进行必要的性能检测。误区 1:Kotlin 比 Java 更消耗性能Google 云端硬盘团队目前已将其.

2020-10-16 17:20:38 43

原创 Android-面试官:性能优化我就问这些问题!能不能刷到我就看你的造化了

前言如题,这是一篇关于Android面试-性能优化最常问的面试题、面试点的文章。这也是“Android-面试官”系列的第二篇文章。对Java模块比较薄弱的小伙伴可以去看一下我的上一篇文章:Android-面试官:这些Java知识点我必问好了,废话不多说,直接冲冲冲!前排温馨提示:阅读本文前,请自备豆浆!如果你已经有 2 - 3 年以上Android开发经验还不懂的怎么去优化自己的项目,那就有点说不过去了。无论是日常工作中还是跳槽面试的时候,性能优化都是我们打怪成长为一名优秀的高级开发工程师.

2020-10-13 15:34:33 160

原创 全面理解Handler消息机制,搞懂这十个大厂面试真题你就彻底懂了

在安卓面试中,关于 Handler 的问题是必备的,但是这些关于 Handler 的知识点你都知道吗?一、题目层次Handler 的基本原理子线程中怎么使用 HandlerMessageQueue 获取消息是怎么等待为什么不用 wait 而用 epoll 呢?线程和 Handler Looper MessageQueue 的关系多个线程给 MessageQueue 发消息,如何保证线程安全Handler 消息延迟是怎么处理的View.post 和 Handler.post 的区别Han

2020-10-12 22:26:40 70 1

原创 不是吧!做了3年Android还没看过OkHttp源码?好吧,带你彻底理解一波!

前言现在Android界的网络请求已经是OkHttp和Retrofit的天下了,Retrofit本质上也是将请求委托给了OkHttp,所以我们如果想要能够更加全面的使用和掌握OkHttp,了解其源码是必不可少的。 如果对Http还有不了解的小伙伴,可以一下这篇文章,带你全面掌握Http协议 面试官的这份HTTP灵魂追问你Hold住吗?作者:Mlx链接:https://juejin.im/post/6881436122950402056OK,出发~简单使用同步方式和异步方式殊途同归,而且异步

2020-10-10 21:51:56 55

原创 面试官:这波HTTP究极combo,你顶得住吗?

基本概念问题:HTTP 是什么?描述一下:HTTP 是超文本传输协议,也就是HyperText Transfer Protocol。问题:能否详细解释「超文本传输协议」?HTTP的名字「超文本协议传输」,它可以拆成三个部分:协议针对 HTTP 协议,我们可以这么理解。HTTP 是文个⽤在计算机世界⾥的协议。它使⽤计算机能够理解的语⾔确⽴了⼀种计算机之间交流通信的规范(两个以上的参与者),以及相关的各种控制和错误处理方式式(为约定和规范)。传输针对传输,我们可以进⼀步理解了 HT.

2020-10-09 21:54:34 177 1

原创 Android程序员面试必须要掌握的:Https加密原理、中间人攻击到底是怎么回事

前言–阅读本文你将收获1.https加密的基本原理与过程,https为什么是安全的?2.什么是中间人攻击,中间人攻击的基本原理3.如何防止中间人攻击作者:RicardoMJiang链接:https://juejin.im/post/6880024440143347719https加密的基本原理https要完成的目的1.Client必须要能确定,它要访问的Server确实是正确的Server2.Client和Server交流的信息不能被其它第三方窃听3.当然,针对第1点,反过来,Se.

2020-10-07 16:40:01 344 1

原创 Android-面试官:这些Java知识点我必问

前言很早之前就打算写这个“Android-面试官”系列文章,由于各种事拖着忙着(其实就是懒)就拖到了现在。现在刚好到国庆了,我有空写,大伙也有空学,作为一名好(lao)博(you)主(tiao)怎么可以一直拖更,不更点干货给大家呢?哈,干货我有一大把,就看你咽不咽的下了。废话就不多说了,直接开梭。前排温馨提示:阅读本文前,请自备豆浆!Java作为移动应用开发中不可以或缺的部分,是我们每个Android开发者都必须具备的技能,掌握的越多,对我们的成长进阶就越有利。今天我们就来系统盘点一下,And.

2020-09-29 18:08:39 59

原创 图文+视频双管齐下,带你全面彻底理解Retrofit源码,学完还不懂请砍我!【墙裂建议收藏】

缘起最近回归看了一下Retrofit的源码,主要是因为项目接入了协程,所以想研究一下Retorift是如何支持协程的。Retrofit是在Version 2.6.0开始支持协程的,所以本篇文章有关Retrofit的源码都是基于2.6.0的。温馨提示,如果有Retrofit的源码阅读经验,阅读这篇文章将会轻松很多。时间充裕也可结合视频学习Retrofit源码:https://www.bilibili.com/video/BV1tz4y1Z7AK作者:午后一小憩链接:https://juejin..

2020-09-25 22:17:11 44

原创 Android进阶必备:滑动冲突解决与事件分发机制(附视频讲解)这篇看完还不懂请寄刀片

1、前言Android学习一段时间,需求做多了必然会遇到滑动冲突问题,比如在一个ScrollView中要嵌套一个地图View,这时候触摸移动地图或者放大缩小地图就会变得不太准确甚至没有反应,这就是遇到了滑动冲突,ScrollView中上下滑动与地图的触摸手势发生冲突。想要解决滑动冲突就不得不提到Android的事件分发机制,只有吃透了事件分发,才能对滑动冲突的解决得心应手。作者:胖宅老鼠链接:https://juejin.im/post/6844903829482242056B站视频讲解:http

2020-09-22 21:04:03 59

原创 MVVM与Jetpack架构核心技术DataBinding从入门到通透【第二篇】(附源码解析视频教程)

前言DataBinding 是谷歌官方发布的一个框架,顾名思义即为数据绑定,是 MVVM 模式在 Android 上的一种实现,用于降低布局和逻辑的耦合性,使代码逻辑更加清晰。MVVM 相对于 MVP,其实就是将 Presenter 层替换成了 ViewModel 层。DataBinding 能够省去我们一直以来的 findViewById() 步骤,大量减少 Activity 内的代码,数据能够单向或双向绑定到 layout 文件中,有助于防止内存泄漏,而且能自动进行空检测以避免空指针异常启用 Dat

2020-09-21 14:35:03 28

原创 地狱难度!字节跳动Android高级岗:说说RecyclerView的回收复用机制

前言学习源码,研究源码编程思想,是程序开发者进阶的必经之路。然而,进了源码世界,就像是进了迷失森林,没有地图,迟早要死在里面。有个地图会好很多。此类文集,专门用图解编程的方式,来讲解一个知识点,从一个点切入,理解切入点之后,再进行知识发散。路漫漫,进阶之路不好走。与众君共勉之。正文大家都知道**RecyclerView**有回收复用机制,那么回收复用机制是如何作用的?回收复用,细分下来,是两个概念: 回收 和 复用 有如下几个问题。回收的是什么?复用的又是什么?回收到哪里去了?复用

2020-09-18 15:29:26 53

原创 行业凛冬,Android开发怎样准备一场完美的面试?

前言作为一名程序员,想必大家都应该经历过跳槽和面试,这也是我们职业生涯中升职加薪的重要组成部分。特别是在今年来行情并不怎么景气的Android开发,岗位职能被小程序或前端所代替,可谓是“一坑难求”。由此来说,当找到合适的“坑位”时,面试便尤为重要。那么,是否有很多小伙伴,因为面试过程中没有发挥到自己的最佳水平,而错失offer留下了遗憾呢?所以,这次的分享,我想和大家聊聊:怎样准备一场完美的Android面试。怎样调整心态,该有哪些知识储备,发挥自己的全部实力。本文不会讲很多的技术细节,而是从面.

2020-09-17 14:03:43 48

原创 字节一面:https 真的安全吗?可以抓包吗?如何防止抓包吗?(我当场去世)

前言转眼间,2020 年已过去一大半了,2020 年很难,各企业裁员的消息蛮多的,降职,不发年终奖等等。2020 年确实是艰难的一年。然而生活总是要继续,时间不给你丧的机会!如果我们能坚持下来,不断提高自己,说不定会有新的机会。面试中,网络(http, https, tcp, udp), jvm, 类加载机制等这些基础的知识点是高频出现的,每个程序员都能说上好多。但不一定说到重点,以及理解背后的原理。我在面试的过程中也经常被问到,于是总结记录了下来。千万不要小瞧这些基础,有时候,你算法,项目经验都过了

2020-09-16 17:34:14 146

原创 MVVM与Jetpack架构核心技术DataBinding从入门到通透(附源码解析视频教程)

前言DataBinding 是谷歌官方发布的一个框架,顾名思义即为数据绑定,是 MVVM 模式在 Android 上的一种实现,用于降低布局和逻辑的耦合性,使代码逻辑更加清晰。MVVM 相对于 MVP,其实就是将 Presenter 层替换成了 ViewModel 层。DataBinding 能够省去我们一直以来的 findViewById() 步骤,大量减少 Activity 内的代码,数据能够单向或双向绑定到 layout 文件中,有助于防止内存泄漏,而且能自动进行空检测以避免空指针异常启用 Da

2020-09-15 22:21:27 45

原创 字节跳动又一Android开源力作发布!全新视频动画特效SDK:高效、稳定可靠、维护成本低

前不久,字节跳动的技术团队在Github上开源了一个视频动画特效SDK,可以通过制作Alpha通道分离的视频素材,再在客户端上通过OpenGL ES重新实现Alpha通道和RGB通道的混合,从而实现在端上播放带透明通道的视频。这套方案对设计师而言明显降低了特效的制作成本,对于客户端而言有着更可靠的性能和稳定性,且相比cocos2d引擎有着更低的入门门槛和维护成本,为复杂动画的实现提供了一种全新的方式,新的复杂动画开发将会变得更加简单高效。AlphaPlayer已经在Github上标星331,累计分支&

2020-09-14 15:11:21 350

原创 Android程序员现状:没有架构师的命,却得了架构师的病!

Android开发的现状貌似已经是一个老生常谈的问题了。但今天不想写Android开发的现状,什么Android前景如何、Android凉凉之类被别人写烂了的话题。今天我们来聊聊我们自己,我们Android程序员的现状。各位朋友也都是从标题看起点进来的。确实,标题很扎心,也很真实。架构师是程序员晋升的顶点,谁不想成为一名架构师呢?为什么大部分程序员从入行到转行,自始至终还是一个码农呢?我们带着思考看下去。大部分程序员都是从小公司、小团队做起。特别是非科班出身的程序员,除非技术过硬,不然很难进到大公司.

2020-09-11 14:18:15 110

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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