自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 成为android工程师的31+个小技巧

成为Android开发人员很容易,但成为一个成功的Android开发人员,而从其他开发者中脱颖而出。要做到这一点,需要很多努力,激情,奉献和毅力。没有快捷方式或简单的方法,我可以让你成为一个真正成功的开发人员。但是,如果你愿意付出努力和需要的心,你一定会得到你应得的一切成功。在您成为更好的Android开发人员的追求下,这里有一些从我的经验中帮助您的旅程中的一些小巧的专业技巧。所以,如果你已经...

2019-07-17 17:47:49 588 1

原创 Android 一线大厂面试总结

最近因为团队项目被边缘化,新项目接连流产,已经可以上市的项目突然宣布不做了,又加上外包岗的离职,作为正岗也有被裁员的风险,于是出去看了一下机会。面试了阿里巴巴,百度,头条,趣头条,小米,爱奇艺,映客,快手等一线的大厂,最终拿到了满意的offer。下面将面经分享出来。想看更多东西详情请看主页面试前的准备下面我将从以下几个方面来分享一下面试前的准备。一.给自己定位首先要给自己定位,自己现在是...

2019-07-17 15:37:56 1516

原创 阿里巴巴面试 :进程保活如何做到,你们保活率有多高

前言进程保活的关键点有两个,一个是进程优先级的理解,优先级越高存活几率越大。二是弄清楚哪些场景会导致进程会kill,然后采取下面的策略对各种场景进行优化:提高进程的优先级在进程被kill之后能够唤醒一. 进程优先级Android一般的进程优先级划分: 1.前台进程 (Foreground process) 2.可见进程 (Visible process) 3.服务进程 (Servic...

2019-07-16 18:05:21 1065

原创 Android进阶:自定义视频播放器开发(上)

随着快手,抖音,西瓜视频等视频APP的崛起,视频播放已经成为主流,此时作为Android研发的你,想要提高自己的能力还不知道怎么开发视频播放器怎么行?所以今天就带着大家一起开发一个简易播放器:SmallVideoPlayer需求分析我们观察一个视频播放器,可以看到视频播放器除了正在播放的视频还有很多控件,比如播放按钮,暂停按钮,播放进度条,播放计时器等。这么多控件显然无法播放视频,但是他...

2019-07-16 14:56:57 992

原创 用 Flutter 实现 PageView 指示器

本篇用一个PageView的实例来加深印象,并且在之后的专栏里,我们会深化这个示例,做成一个支持上下左右无限滑动的图片Banner,并且教你如何把他做成Dart library并且开放给其他人使用。一.无限滑动的PageView在实现PageView指示器之前,咱们需要先实现一个PageView。在Flutter中实现一个PageView很简单。class BannerGalleryWid...

2019-07-15 17:47:31 1515

原创 AndroidBAT. 字节跳动74道高级面试第二篇

前言**经过一波一波的淘汰与洗牌,剩下的都是技术的金子。**就像大浪褪去,裸泳的会慢慢上岸。而真正坚持下来的一定会取得不错成绩。毕竟Android市场是如此之大。从Android高级的蓬勃的就业岗位需求来看,能坚信我们每一位Android开发者的梦想 。接下来我们针对Android高级展开的完整面试题2019Android74道高级面试题合集目录(含BAT 字节跳动等等)阿里巴巴–And...

2019-07-15 15:35:51 685

原创 用Flutter实现的无限滑动Banner

BannerGalleryInFlutter用Flutter实现的无限滑动Banner可配置的属性使用示例/// 构建数据List<BannerGalleryBean> _createTestData() { List<BannerGalleryBean> list = new List<BannerGalleryBean>(); ...

2019-07-11 17:31:44 531

原创 2019Android74道高级面试合集(含BAT字节跳动等等)

前言最近半年,常常有人问我 “Android就业市场究竟怎么样,我还能不能坚持下去 ?”现在想想,移动互联网的发展不知不觉已经十多年了,Mobile First 也已经变成了 AI First。换句话说,我们已经不再是“风口上的猪”。移动开发的光环和溢价开始慢慢消失,并且正在向 AI、区块链等新的领域转移。移动开发的新鲜血液也已经变少,最明显的是国内应届生都纷纷涌向了 AI 方向。​ 可以说...

2019-07-11 15:42:49 771

原创 Flutter 插件开发:以微信SDK为例

就像 React Native 一样,在 Flutter 应用中,如果需要调用第三方库的方法或者有一些功能需要使用原生的开发来提供,使用 Flutter Plugin 是一种不错的方式,它本质上就是一个 Dart Package,但与其它的 package 不同点在于,Flutter 插件中一般都存在两个特殊的文件夹:android 与 ios,如果需要编写Java、Kotlin或者 Object...

2019-07-10 17:28:14 1276 1

原创 Android进阶 自定义视频播放器

随着快手,抖音,西瓜视频等视频APP的崛起,视频播放已经成为主流,此时作为Android研发的你,想要提高自己的能力还不知道怎么开发视频播放器怎么行?所以今天就带着大家一起开发一个简易播放器:SmallVideoPlayer一.需求分析我们观察一个视频播放器,可以看到视频播放器除了正在播放的视频还有很多控件,比如播放按钮,暂停按钮,播放进度条,播放计时器等。这么多控件显然无法播放视频,但...

2019-07-09 21:41:02 392

原创 多年心路历程见证从技术小白到收获BAT等大厂研发offer,分享一些经验和感悟

写在最前写过很多篇面试总结,这篇文章应该是最完整,最详细的一篇总结。算是人生中一段宝贵的经历,不仅是我研究生生涯交出的一份答卷,也是未来职业生涯的开端。仅以此文,献给自己,以及各位在求职路上的,或者是已经经历过校招的朋友们。不忘初心,方得始终。前言在下本是跨专业渣考研的985渣硕一枚,经历研究生两年的学习积累,有幸于2015秋季招聘中拿到几个公司的研发岗offer,包括百度,阿里,腾讯,...

2019-07-09 17:43:45 598

原创 写给有 Android 开发经验的你们

前言不是要你给出每一个问题的标准答案,而是要你给出这个问题的你的、自己的答案。一 关于简历面试首先要提到的就是简历,简历这个东西真的是一个很深奥的事情,为什么深奥,其实是对像和我这样的人深奥:学历不好、工作经历不好。当然,这和目前技术研发人才需求的大环境也有关系,而且上述两点会越来越影响简历的通过性。说一个真实的事情大家就有概念了,这是一个前同事私下告诉我的,他比我先一年多离开公司,然后到了...

2019-07-09 15:33:43 1521

原创 面试的时候突然遇到答不上的问题怎么办?

前言今天给大家讲讲面试过程当中最长遇到的窘境,也是最能体现一个候选人临场应变能力的地方,那就是当我们在面试的过程当中,遇到的问题回答不上来的时候,该怎么办。误区在开始讲解之前,先纠正一个误区,那就是对于一场面试而言,最后的结果**好坏并不完全取决于面试当中的问题是否都回答了上来。能不能录取和是否回答出所有问题并没有直接的联系。**换句话说,我自己经历过的,无论是面试也好,还是面别人也罢,问题...

2019-07-09 14:00:32 77544 88

原创 理解Android虚拟机体系结构

1 什么是Dalvik虚拟机Dalvik是Google公司自己设计用于Android平台的Java虚拟机,它是Android平台的重要组成部分,支持dex格式(Dalvik Executable)的Java应用程序的运行。dex格式是专门为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。Google对其进行了特定的优化,使得Dalvik具有高效、简洁、节省资源的特点。从Andro...

2019-07-08 17:46:16 390

原创 陆奇:除了好代码,工程师怎样才算优秀?

个人非常崇拜**"陆奇 “**陆奇以精力旺盛著称,通常凌晨4点起床,先查邮件,然后在跑步机上跑4英里,边跑边听古典音乐或看新闻。早上5点至6点就办公室,利用这段时间不受别人干扰准备一天的工作,然后一直工作到晚上10点,有时也会在半夜给同事发电子邮件。LinkedIn CEO 杰夫·维纳(Jeff Weiner)曾在雅虎与陆奇共事多年,他开始以为这种日程安排无法持久,后来不得不说:“陆奇的确是我所见...

2019-07-08 16:23:40 471 2

原创 熟悉Android打包编译的流程

从事Android高级研发,怎能不知道Android的打包流程呢?今天就为大家讲解Android打包的流程:Android 构建系统编译应用资源和源代码,然后将它们打包成可测试、部署、签署和分发的 APK。一般使用 Android Studio开发的时候使用Gradle构建工具包来自动执行和管理构建流程,同时也可以灵活地自定义构建配置。Gradle 和 Android 插件独立于 Andr...

2019-07-05 17:27:34 4256 1

原创 android bitmap的缓存策略

在这篇文章中:lrucachedisklrucache缓存策略对比与总结不论是android还是ios设备,流量对于用户而言都是宝贵的。在没有wifi的场景下,如果加载批量的图片消耗用户过多流量,被其知晓,又要被念叨一波~如何避免消耗过多的流量呢?当程序第一次从网络加载图片后,就将其缓存到移动设备上,这样再次使用这个图片时,就不用再次从网络上下载为用户节省了...

2019-07-04 19:47:03 261

原创 不懂源码、NDK,架构设计,只会写业务代码真的会被淘汰吗?

前言我高中同学A也是个写代码的Android程序员,土生土长的的广东靓仔,五月初八突然结婚了。咱俩就好久没见过面了。刚好今天出门办事碰上了,找了一家店坐一起喝酒聊天。我聊天时打趣他:我们还在天天加班对象代码,你已经面向对象了,真是快人好几部啊。改行A说他今年转行了,回家接受了他爸的小茶叶店他说以前想去做自己喜欢的事情,对卖茶叶不感兴趣。但是写代码久了,心也倦了,觉得卖卖茶叶也挺舒服的。...

2019-07-04 17:41:39 283

原创 面试官到底想看什么样的简历?

面试一直是程序员跳槽时期非常热门的话题,虽然现在已经过了跳槽的旺季,下一轮跳槽季需要到年底才会出现,但是当跳槽季的时候你再看这篇文章可能已经晚了,过冬的粮食永远不是冬天准备的,而是秋收的时候。简历准备简历是你进入面试的敲门砖,也是留给意向公司的第一印象,所以这个很重要,必须在这上面做足了文章,一份优秀的面试简历是整个面试成败的重中之重,我们会详细分析如何准备简历才能保证简历不被刷掉。简历通常...

2019-07-04 15:06:20 1695 1

原创 由浅到深,深入分析APP卡顿和优化

从这篇文章中你能获得这些料:知道setContentView()之后发生了什么?知道Android究竟是如何在屏幕上显示我们期望的画面的?对Android的视图架构有整体把握。学会从根源处分析画面卡顿的原因。掌握如何编写一个流畅的App的技巧。从源码中学习Android的细想。收获两张自制图,帮助你理解Android的视图架构。文末有资料大纲一.从setContentV...

2019-07-03 17:56:14 422

原创 怎么看待 Android 市场的‘供大于求’?

前言前几年移动互联网创业的风口,如今渐渐消失,****移动互联网被巨头公司瓜分,一些创业公司倒闭了,Android 开发需求慢慢趋近于饱和。而当初移动互联网处于风口时,自学、转行以及培训机构出来了大量 Android 开发从业者,导致目前看起来**市场供大于求。那么 Android 开发工程师们应该如何面对当下的局面呢?其实当下的供需关系不平衡不代表没有需求,市场上过多的是只会写 xml 和...

2019-07-03 16:33:15 200

原创 腾讯,阿里,百度Android高级岗;全方位性能调优技术体系详解

前言很多人对大厂的印象是;面试造飞机,工作拧螺丝用造飞机的能力去拧螺丝,形象的说明了大厂里的技术标准是远高于在小公司搬代码的。在具备java语言,设计模式,数据结构算法技能能基础之上,性能调优是关键点这篇文章希望给大家介绍一下目前那些一线公司Android开发中性能调优最常用的方法,后面会再把那些性能调优的技术解析文章分享给大家,欢迎持续关注~全方位性能优化方法1,布局优化布局优化的...

2019-07-02 16:35:56 223

原创 Android进阶:自定义类加载器加载加密类文件

之前面试的时候有许多面试官问类加载器相关的问题,所以这是一个很重要的知识点。而且对于高级Android研发来讲,懂得更多类加载相关的东西,对开发也会有很多的帮助,比如热更新,类加密等。其实笔者对类加密比较感兴趣,就稍稍调研了一下。类加密的其实是为了防止APP被反编译,防止反编译的方法有很多种,比如混淆,加固等。自己对类文件进行加密,并自定义类加载器也是一种办法:首先我们的代码打包编译之后会变成...

2019-07-02 15:17:46 506

原创 2019初中级Android开发社招面试解答之性能优化

注:因为实际开发与参考答案会有所不同,再者怕误导大家,所以这些面试题答案还是自己去理解!面试官会针对简历中提到的知识点由浅入深提问,所以不要背答案,多理解。1.图片的三级缓存中,图片加载到内存中,如果内存快爆了,会发生什么?怎么处理?参考回答:首先我们要清楚图片的三级缓存是如何的如果内存足够时不回收。内存不够时就回收软引用对象2.内存中如果加载一张500X500的png高清图片.应...

2019-07-01 19:38:28 591

原创 2019中级Android开发面试解答之Handler

注:因为实际开发与参考答案会有所不同,再者怕误导大家,所以这些面试题答案还是自己去理解!面试官会针对简历中提到的知识点由浅入深提问,所以不要背答案,多理解。Handler1.谈谈消息机制Handler作用 ?有哪些要素 ?流程是怎样的 ?参考回答:负责跨线程通信,这是因为在主线程不能做耗时操作,而子线程不能更新UI,所以当子线程中进行耗时操作后需要更新UI时,通过Handler将有关U...

2019-07-01 15:24:06 130

原创 Android activity之间传值

当对Android有一些了解后,不难发现,Android程序UI框架接近于Web页面的概念。每一个用于呈现页面的组件,Activity,都是彼此独立的,它们通过系统核心来调度整合,彼此之间的通过Intent机制来串联。每一种架构都会有其利弊,Android当然也不能超然脱俗。由于Activity之间的松耦合关系,使得其复用能力特别的出色,Mash-Up方式可以有效的提高开发效率。但另一方面,由于...

2019-06-28 17:00:04 145

原创 作为一名面试者你应该知道的【带大厂面试题】

一.大厂更重注那些?之前有人请教我,问过这样类似的问题“谈一谈大厂给你的感觉,面试大厂面试官更注重那些方面?”在我看来大厂更重注的有这么几点:1.基础知识大厂更注重你的基础知识,你面对问题的时候,是否有自己的思路。思考问题的高度是否以一个工程师的角度去全面的思考问题,因为大厂不确认,需要的是那种能全方位思考问题的人2.数据结构和算法,设计模式①数据结构和算法数据结构和算法其实是分开的...

2019-06-27 20:27:13 1469

原创 在子线程中直接使用 Toast 及其原理

一般我们都把Toast当做一个UI控件在主线程显示。但是有时候非想在子线程中显示Toast,就会使用Handler切换到主线程显示。但是子线程中真的不能直接显示Toast吗?答案是:当然可以。那应该怎么操作呢?在当前线程中先初始化一个Looper即可!Looper.prepare();Toast.makeText(getBaseContext(), "text", Toast.LENGT...

2019-06-27 17:09:05 373

原创 Android进阶:RxJava2源码解析 2

上一篇文章Android进阶:RxJava2 源码解析 1里我们讲到Rxjava2 从创建一个事件到事件被观察的过程原理,这篇文章我们讲Rxjava2中链式调用的原理。本文不讲用法,仍然需要读者熟悉Rxjava基本的用法。一.Rxjava2 的基本用法Rxjava是解决异步问题的,它的链式调用让代码看起来非常流畅优雅。现在我们带上线程切换以及链式调用来看看。下面代码是示例: Ob...

2019-06-26 17:25:32 113

原创 Android进阶:RxJava2 源码解析 1

本文适合使用过Rxjava2或者了解Rxjava2的基本用法的同学阅读一.Rxjava是什么Rxjava在GitHub 主页上的自我介绍是 “a library for composing asynchronous and event-based programs using observable sequences for the Java VM”(一个在 Java VM 上使用可观测的...

2019-06-26 15:32:37 102

原创 内容引争议,阿里应届生年薪25W?

马云的996福报言论的热度还没褪去,近日就有阿里员工开始秀工资了应届生年终25w+,这个数字应该远超很多工作两三年的程序员了,估计引起了大部分人不适。。近两年就一直有老员工薪资被应届生倒挂的消息不断相传,不止BAT,其他互联网公司也都纷纷开始这种迎合趋势,搞得很多老程序员非常气愤,同时也让很多人产生了跳槽的想法。看评论区就知道大家啥想法了…之前就看知乎上有人说,阿里给应届生的薪资很高,无...

2019-06-25 20:58:56 709

原创 Android视图动画-View Animation

视图动画主要有两种:一、Tween Animation译为“补间动画”1、scale译为“规模、比例”,是对View进行特定范围的缩放2、alpha通过改变View的透明度实现View隐现的效果3、translate译为"转移",是对View进行位置的移动4、rotate译为“旋转”,是让View围绕特定的点进行旋转PS:所有View的移动、隐藏、旋转仅仅是看到的动画效果,实际View...

2019-06-25 16:46:38 128

原创 阿里P7技术知识点,Android架构师年薪50w,只因做到了这几点

前言最近部门招聘,很多工程师,包括我在内都参与了内推和面试的过程,经过这次招聘,我发现能够最终拿到offer的人,基本上在看到简历的那一瞬间就已经定下来了,后续的面试只不过是一种验证而已(注意,是验证,而不是走过场),除非你面试过程中犯错误,或者你不想来,否则,那个offer一定是可以拿下的。阿里薪资结构:一般是12+1+3=16薪•年底的奖金为0-6个月薪资,90%人可拿到3个月在来看...

2019-06-25 15:57:26 690 2

原创 互联网如今趋势,30岁的程序员如何应对?

不知从何时起,程序员似乎从脑力劳动者变成了体力劳动者,尤其是那批技术提不上去的程序员,年纪一来似乎就丧失了与年轻人竞争的机会。30岁看起来确是一道坎,人脉玩的好的已经当上了中层管理,技术钻的深的依旧无比吃香,只剩下那批没有野心混吃等死的程序员,他们真的开始慌了,被辞退的比比皆是,原因只是能力不再能匹配薪资!那么如何改变这个局面?一.请开始提高你的单位时间价值你可能曾经这么想过,如果我一个小时...

2019-06-24 17:16:06 162 1

原创 Android开发者要换多少次工作,才能心满意足?

在 IT 界流传着这么一句话:要想涨工资,那就得跳槽。想从公司得到涨薪,不是没有,有也是很少的。大约在8% 到 25%,但是只有突出贡献的人才能拿到 25%,普通人,能涨10%也就很不错了。技术厉害,不一定能入职心心相念的公司。跑得快的人,不一定是最先到达终点的人。 我们不能一味追求薪资,还要要考虑下发展和成长。一 为什么要跳槽?当有跳槽的想法后,应该好好想想,为什么要离开。暂时列入一下...

2019-06-24 16:04:03 144

原创 通过EventBus框架GET大牛的框架思维

EventBus的作用Android中存在各种通信场景,如Activity之间的跳转,Activity与Fragment以及其他组件之间的交互,以及在某个耗时操作(如请求网络)之后的callback回调等,互相之之间往往需要持有对方的引用,每个场景的写法也有差异,导致耦合性较高且不便维护。以Activity和Fragment的通信为例,官方做法是实现一个接口,然后持有对方的引用,再强行转成接口类...

2019-06-24 14:51:05 102

原创 作为程序员,你需要拥有的几大素质!

前言成为一个专业人士是所有程序员的目标,近几年的工作经历,近距离观察了很多大公司的大佬。有幸与其中的一部分一起工作。在此分享大牛程序员的行为风格以及我自己的所思所想,希望对大家有所帮助。特此声明:此为我个人主观观点,不喜勿喷一.你应该承担怎么的责任这是专业和不专业的分水岭。对于一般的程序员来说,责任就是及时、高质量的完成任务;对于 一个领导者来说,其责任就是统领全组,合理安排任务,让组员各...

2019-06-21 17:39:55 346 1

原创 在Flutter中嵌入Native组件的正确姿势

引言在漫长的从Native向Flutter过渡的混合工程时期,要想平滑地过渡,在Flutter中使用Native中较为完善的控件会是一个很好的选择。本文希望向大家介绍AndroidView的使用方式以及在此基础之上拓展的双端嵌入Native组件的解决方案1. 使用教程1.1. DemoRun嵌入地图这一场景可能在很多App中都会存在,但是现在的地图SDK都没有提供Flutter的库,而自己...

2019-06-21 16:21:34 519

原创 多家一线互联网公司Android面试题:小米+百度+360+美团【下】

前言前面更新了一些Android面试题上半部分,很多人说太简单了,那么接下来我们来更新下半部分,我们一起来看看,希望对大家都有所收获一.什么情况导致oom-乐视-美团1)使用更加轻量的数据结构2)Android里面使用Enum3)Bitmap对象的内存占用4)更大的图片5)onDraw方法里面执行对象的创建6)StringBuilder二.Service与Activity之...

2019-06-21 15:30:39 364

原创 多家一线互联网公司Android面试题:小米+百度+360+美团

前言很多人在这一段时间面试了很多公司确迟迟得不到心仪公司的offer 接下来,我会整理一些一线互联网公司的面试题,希望能在面试的时候帮助到大家【文末有彩蛋】1.抽象类接口区别-360①默认的方法实现抽象类可以有默认的方法实现完全是抽象的。接口根本不存在方法的实现②实现子类使用extends关键字来继承抽象类。如果子类不是抽象类的话,它需要提供抽象类中所有声明的方法的实现。子类使用...

2019-06-20 17:30:04 122

空空如也

空空如也

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

TA关注的人

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