自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android开发:为什么你的学习效率如此低,为什么你很迷茫?

一天一天的过的真的是太快了,常常感到时间在前进,而我们还在停滞不前,看似每天努力的工作学习着,仔细想想其实又会发现,一天下来我们好像还真的什么都没干,看似忙碌的一天,我们把时间都用在哪了?学习!可是为什么我觉得什么也没学到呢?其实不是没有学到东西,只是我们的学习效率太低而已!为什么我们的学习效率如此的低呢?我们在上学一来一直都羡慕那种玩的多但是考的又好的人,他学习的时候你也在学习,他玩的时...

2019-07-18 15:55:36 25663 95

原创 资深 Android 开发者的出路,做管理还是继续写代码?

移动应用开发从逐渐开始火爆到如今也有小十年了,大部分的学校还是没有开放专门的课程。目前市场上的大部分 Android 开发工程师大多数是自学或者是培训出身,用一段时间上手 Android 开发技能(畅销书作家 Josh Kaufman 提出,掌握正确的方法后,可以在短期内上手任何技能 ),而后进入一家公司或者接手一个项目培养实操能力、积累实战经验。再之后呢,Android 开发初期之后...

2019-07-10 16:12:35 614

原创 一位自我怀疑的Android开发者的灵魂拷问:你够好吗?

我想每个开发者在学习成长的过程中,在面临技术难题的时候,都有经历过自我怀疑的过程,但是有时候这并不是你的错,大家都经历过如此的过程。我们作为一个开发者,在成长的过程中,总有一些小的胜利和小的沮丧,学着为自己喝彩吧。以下任何一个,是不是听起来都很熟悉?你经常担心自己不够好。看看你周围的开发者们,他们似乎拥有一切。他们的代码比你的更简洁,他们 Debug 的速度比你更快,他们只需要在编...

2019-07-10 16:11:11 1795 12

原创 Android应届毕业生“过五关斩六将”,怒刷千题,让你面试一路畅通!

面试:如果不准备充分的面试,完全是浪费时间,更是对自己的不负责!如果想变得优秀那就去看那些优秀的人在学什么,做什么,想尽一切办法和他们交流;多出去看看这个世界,然后把自己逼到往死里学。如今已是五月底,马上即将迎来六月份的毕业季,大批的届毕业生即将进入求职面试的紧张阶段,在这里分享一下我从事Android多年以来的面试经验。这篇攻略是我从事开发工作七八年来,去面试,以及面试别人的...

2019-06-14 21:17:13 754 4

原创 屌丝的眼泪,因为错过的初恋,才搞清楚PNG图片压缩原理

背景今天凌晨一点,突然有个人加我的qq,一看竟然是十年前被我删掉的初恋。。。。因为之前在qq空间有太多的互动,所以qq推荐好友里面经常推荐我俩互相认识。。。。谜之尴尬同意好友申请以后,仔细看了她这十年间所有的qq动态和照片。她变美了,会打扮了,以前瘦瘦的身材配上现在的装扮和妆容,已经是超越我认知的女神了。而我依然碌碌无为,逐渐臃肿的身体加上日益上扬的发际线,每天为生活操劳和...

2019-06-10 21:13:16 8822 63

原创 Android完整知识体系路线(菜鸟-资深-大牛必进之路)

前言移动研发火热不停,越来越多人开始学习Android 开发。但很多人感觉入门容易成长很难,对未来比较迷茫,不知道自己技能该怎么提升,到达下一阶段需要补充哪些内容。市面上也多是谈论知识图谱,缺少体系和成长节奏感,特此编写一份 Android 研发进阶之路,希望能对大家有所帮助。由于篇幅过长,有些问题的答案并未放在文章当中,不过我都整理成了一个文档归纳好了,请阅读到文末领取~Ja...

2019-06-10 21:09:17 8888 22

原创 十分钟让你了解Android触摸事件原理(InputManagerService)

从手指接触屏幕到MotionEvent被传送到Activity或者View,中间究竟经历了什么?Android中触摸事件到底是怎么来的呢?源头是哪呢?本文就直观的描述一个整个流程,不求甚解,只求了解。Android触摸事件模型触摸事件肯定要先捕获才能传给窗口,因此,首先应该有一个线程在不断的监听屏幕,一旦有触摸事件,就将事件捕获;其次,还应该存在某种手段可以找到目标窗口,因为可能有多个AP...

2019-07-18 16:32:20 3307 6

原创 一篇文章带你了解 Android 消息机制的原理!

Android的消息传递,是系统的核心功能,对于如何使用相信大家都已经相当熟悉了,这里简单提一句。我们可以粗糙的认为消息机制中关键的几个类的功能如下:Handler:消息处理者 Looper:消息调度者 MessageQueue:存放消息的地方使用过程:Looper.prepare > #$%^^& > Looper.loop(死循环) --- loop到一个消...

2019-07-17 21:15:32 599

原创 来自一位五年Android工程师APK体积优化的一些总结

面对那种无节操的产品,你们怎么办?产品:“apk的体积是否可以优化以下,这样比较好推广!”我:“不可以!”产品:“apk的体积是否可以优化以下,这样比较好推广!”我:“不可以!”产品:“apk的体积是否可以优化以下,这样比较好推广!”我:“我考虑一下!”没办法面对这样的产品我们怎么能怂!老子写代码都是一把梭!!!但是回头想想,这个和写代码有个毛线关系!!!好...

2019-07-16 21:23:29 630 1

原创 Android Native进程间通信实例—Socket本地通信服务端进程异常退出解决办法

导读:好难受啊,为什么服务端说挂就挂,明明只是客户端关闭而已,服务端怎么能挂呢?想想,如果手机上使用一个聊天程序的时候,手机端关闭了聊天程序,那么远端服务器程序总不能说挂就挂吧!所以一定要查明真相!1. 跟踪代码查找到进程退出的源头之前服务端源码:https://www.cnblogs.com/songsongman/p/11187844.html查阅代码发现,代码主体在w...

2019-07-15 21:43:07 559 1

原创 Android 开发你需要了解的那些事:学习路线规划+技术需注意的问题

背景最近部门有新入职员工,作为规划技术路线的导师,这边给新员工安排了学习路线。除了基本的学习路线之外,每次沟通,我都留了一个小问题,让小伙伴去思考。这些问题有些是刚接触 Android 开发的小伙伴所不熟悉的,有些则是部分初级工程师都没有注意到的。因此这边纪录一下,希望帮助刚毕业进入职场的 Android 小伙伴,或是对这些还不是很熟悉的 Android 开发工程师们。如有...

2019-07-15 17:24:51 294

原创 身为一位程序员:你是否思考过自己想成为什么级别的程序员?

作为一名程序员,不知道你是否考虑过这个问题:“你想成为什么级别的程序员?”假如你还没有考虑过,那真的是该闭上眼睛,用力地想一想了。这个问题并不好回答,因为它多少有些严肃。假如我要问你:“你最喜欢的书是什么?”,虽然也有一点点严肃,但你没准会不假思索地回答:“《平凡的世界》。”这两种问题的难易指数显然不在一个等量级上。但即便是这个问题你觉得很难回答,也应该好好地思考一下,为了你自己。...

2019-07-12 15:42:05 270 1

原创 论“Android”在未来十年的发展

电子产品在十年里,尤其是手机行业,兴衰起落。例如当初的手机霸主“诺基亚”,被初出茅庐的智能手机“苹果”吗,秒杀在手机行业的历史当中。可以苹果媲美的则是Android,市场占有率最大的两大手机系统供应商。一个开源,一个闭源。那么Android在未来的十年会发展成什么样子?安卓,ios,微软Android的未来具体会发展成什么样子,会产生智能家居,人工智能,VR技术,AR技术,安防。未来的...

2019-07-11 17:13:06 493 1

原创 资深Android程序员向你发问:如果离开公司这个平台,你还能靠什么赚钱?

01“人生最大的不幸,就是无法清晰认识自己。有时,离开了平台,才发现自己什么都不是。”话说,自2017年开始,不仅是创业公司,就连大公司都面临着巨大压力。 比如,最近大大小小的互联网公司经历关门与并购,就连端着“金饭碗”的国企人员,比如银行从业者,也每天提心吊胆地经受着组织瘦身的考验。于是乎,这个社会陷入了集体迷茫。 更让人关心的,还要数每个人眼前那一亩三分地儿的“钱”途和安...

2019-07-11 16:02:52 519

原创 Android开发:关于Android冷启动优化(从3.63%降到0.95%)

前段时间做冷启动优化,刚好也很久没写博文了,觉得还是很有必要记录下。一.常规操作public class MainActivity extends Activity { private static final Handler sHandler = new Handler(Looper.getMainLooper()); @Override prote...

2019-07-04 20:52:40 1364 1

原创 Android 2019之BAT等大厂必问技术面试题

持续更新中,并完善答案------ 最近博主身边的安卓朋友换个坑,接到BAT等大厂面试邀请,回来聊天,博主记录下各大厂必问的部分有用面试题.希望对你学习,工作,面试有所帮助.(博主会持续收集更新这些面试题),博主会对分享和投稿的面试题做一些过滤,在此再次感谢分享面试题各位朋友和读者文章目录Android 2019之BAT等大厂必问技术面试题常规电话面试具体面试设计模式部分201...

2019-07-03 21:11:06 287

原创 来自腾讯十年开发者发自腾讯一线的真实Android资料

现在的市场环境确实不大好,裁员与及在预谋裁员的公司一大把,当然招人的公司也有。就会有一波离职、求职潮。作为求职者来说,面试是一道坎,很多人会恐惧面试,即使是工作很多年的老鸟,可能仍存在面试的焦虑。所以今天小编就在这面分享一波福利(评论有惊喜啊~),里面包含了一些高阶Android方面的技术资料,里面包括有高级UI、性能优化、移动架构师、NDK、混合式开发(ReactNative+Weex)微信...

2019-07-03 20:48:07 331

原创 Android 开发多年了,在BA工作也有多年,但为什么在Android开发中我仍然不想使用Kotlin?

Android 开发多年了,在BA工作也有多年,但为什么在Android开发中我仍然不想使用Kotlin?如果你有下面罗列问题的解决方案,就请你把它们看做为我个人意见和评论吧!1)编译速度缓慢一个比较小的工程(共有100类左右,大部分采用Kotlin)花费1分钟进行编译,这是无法让人接受的。https://youtrack.jetbrains.com/issue/KT-62462)Kot...

2019-07-03 10:53:55 520

原创 遭遇技术瓶颈该怎么办?一位五年Android经验架构师来说说他的工作感悟

最近关于有一张关于Android学习的搞笑图片非常火,虽然很搞笑,但对于学习Android的程序员也是非常形象非常心酸了。。。而这张图还只是描述了一些框架及控件,还有更多的各种底层的实现方式及java基本功等等,Android要学习的东西太多了啊。。。最近大环境不好,很多人可能会很迷茫,到底该不该转行?也有一些人遇到了技术瓶颈,技术很难得到提升而为此苦恼。那么我们在大环境不好的情况...

2019-07-02 22:02:09 443 2

原创 浅谈Android移动开发程序员的职业发展之路

现在几乎每个it公司都在开发移动产品,我最早知道Android还是在09年成都某学院上大学的时候,从新闻上知道有这么一家公司,创始人安迪·鲁宾很有名,但安卓到底是做什么的,我并没有关注。到2010年毕业的时候,Android已经发展到了2.2版本,百度了一下Android,知道了(应用)开发采用的是Java语言。我当时学过C,C++,对java有些了解,从成都辗转来到北京,找到的工作...

2019-07-01 21:48:32 3414 1

原创 Android事件分发机制源码解析

触摸事件传递机制是Android中一块比较重要的知识体系,了解并熟悉整套的传递机制有助于更好的分析各种滑动冲突、滑动失效问题,更好去扩展控件的事件功能和开发自定义控件。预备知识MotionEvent在Android设备中,触摸事件主要包括点按、长按、拖拽、滑动等,点按又包括单击和双击,另外还包括单指操作和多指操作等。一个最简单的用户触摸事件一般经过以下几个流程:手指按下 手指...

2019-07-01 21:29:55 242

原创 Kotlin中 四个提升逼格的关键字你都会了吗?

使用kotlin的时候对这几个关键字的使用不是很明确,找了很多文章和书籍来加深一下印象,感谢mikyou开篇看结论letlet扩展函数的实际上是一个作用域函数,当你需要去定义一个变量在一个特定的作用域范围内,let函数的是一个不错的选择;let函数另一个作用就是可以避免写一些判断null的操作。 let函数的一般结构 object.let{it.todo()//在函数...

2019-06-28 21:40:12 387

原创 不会搭建Android知识框架,活该你成不了技术大牛!

正文共:3327字建议只字不差的阅读(一篇文章都没耐心读完,你还能干啥)接下来我会尽最大的篇幅把我的方法论给大家讲清楚,每一个步骤会告诉你为什么这么做以及到底该如何做,也就是说我不仅告诉你这个道理,更会给你提供切实可行的方案,可以让你马上行动起来!首先自学安卓的第一步,经过我长时间的自学经验总结,最好的方式就是首先从搭建知识框架开始,这个知识框架就好比盖一座房子,它就相当于房屋的整...

2019-06-27 21:51:39 346 1

原创 互联网面试实习经验分享-开发岗

六月份,又是一个毕业季,最近各大互联网的暑期实习招聘要开始了,身边的小伙伴们也都忙碌了起来。整理了一些 开发类面试经验,分享给需要的同学。我先做个简单的自我介绍。晓晓,研二在读,大三学年末开始接触Android开发,前后共在美团、头条等公司实习18个月左右。有过6-8次面试经历,包括百度、网易、keep等,有些通过有些失败,在这里分享一些开发类面试通用型问题,并不只针对于Android开发...

2019-06-25 20:57:41 954 1

原创 Android 垃圾回收黑科技

今天,我们来学习下 Android 中的垃圾回收机制。大家应该知道,JVM 和 Dalvik 的垃圾回收机制实际并不完全相同。而垃圾回收机制一直都是工作和面试中的必备技能,对 GC 有深入的理解,才能在代码层面更好地去减少 GC 的发生,毕竟每次 GC 都会对主线程的运行造成一定的卡顿,从而影响到用户体验。1前言本节将介绍支付宝 Android 客户端启动速度优化下的「垃圾回收」具...

2019-06-25 18:03:26 750

转载 关于Android学习的三个终极问题身为程序员的你有遇到吗?

缘起以前在读研的时候,有一次和同学一起上自习。我在学习,他也在学习。我想,大家每天都一起上课,记笔记,上自习,完成作业,智商也差不多,为何考试的时候有时候差距会很大呢?这个问题我直到今天也没有答案,这几天和朋友闲聊说到这个事情。他们有得说是智商有差距,有得说是学习的时候心不在焉——看着在学习,其实已神游大千世界。.....,不过,我自己从来没有下过类似的结论。我武断的猜测,这个问题应该是没...

2019-06-25 17:32:08 526

原创 一篇看懂Android与Flutter之间的通信

Flutter作为一种跨平台解决方案,经常会作为一个模块嵌入到原生Android与iOS应用中,Flutter与Android原生端的通信必不可少。所以本文就来讲述一下Android如何与flutter进行通信。1、架构概述消息通过平台通道在native(host)与flutter(client)之间传递,如下图所示:为了确保用户界面能够正确响应,消息都是以异步的方式进行传递。无论...

2019-06-24 17:35:53 953 1

原创 面试总结:我是如何通过阿里面试的?电话面+视频面+boss面+交叉面+HR面

几个月前参加了19年的阿里春招,有幸最终拿到阿里offer,base杭州,岗位客户端开发。这段时间一直忙于其他事情,拿到意向已经过去几个月了其实,但是在其中也有在慢慢整理那次的面试内容,今天终于整理好了,在此分享一些关于面试的干货,攒一波RP,回馈社会。一面阿里的面试官都很和蔼。一面面试官听声音感觉应该是入职两三年的感觉。上来自我介绍后直接开始问android相关问题。大概问题如下...

2019-06-21 21:48:29 10467

原创 腾讯开源超实用的UI轮子库,我是轮子搬运工

QMUI_Android功能特性全局 UI 配置只需要修改一份配置表就可以调整 App 的全局样式,包括组件颜色、导航栏、对话框、列表等。一处修改,全局生效。丰富的 UI 控件提供丰富常用的 UI 控件,例如 BottomSheet、Tab、圆角 ImageView、下拉刷新等,使用方便灵活,并且支持自定义控件的样式。高效的工具方法提供高效的工具方法,包括设备...

2019-06-21 20:32:03 458

原创 Android程序员在职业生涯中如何规划自己?——阿里大牛给你建议

你所能犯的最大错误就是相信自己是在为别人工作。这样一来你对工作的安全感已然尽失。职业发展的驱动力一定是来自个体本身。记住:工作是属于公司的,而职业生涯却是属于你自己的。——厄尔•南丁格尔很少有软件开发人员会主动管理自己的职业生涯。可是,成功的软件开发人员之所以能成功都不是偶然的。他们目标明确,为了达成目标,他们制订了坚实可靠而又深思熟虑的计划。如果你真的想在软件开发这个充满竞争的世界里脱颖...

2019-06-20 21:58:29 1895 1

原创 Android OkHttp 史上最优雅的设置baseUrl

为何要重复造轮子为什么要重复造轮子?无非就一个原因以前的轮子有些功能不好用,用起来不够优雅我们先来说说第一条,Retrofit哪里不好用,用起来不够优雅?首先,我觉得是对文件的操作不是那么的友好,如文件上传/下载、上传/下载进度监听、断点下载,这些都需要我们进行二次封装,看过Android 史上最优雅的实现文件上传、下载及进度的监听的同学知道,使用RxHttp是多么的简单;然后,...

2019-06-20 21:55:14 2136

原创 我的工作感悟:作为Android 开发者,该如何提升自己的职场竞争力?

互联网现状今年的互联网,延续了去年的态势。虽然前些年,每到年底的时候大环境都不好,然而来年照样春暖花开。但是2018下半年的颓势,在2019年春天并未得到缓解,所以现在的互联网环境是真的不好了。首先各大公司争相优化员工,小公司我就不提了,咱就只说大公司。先有阿里、百度、京东、网易、美团和滴滴,再有外企甲骨文和IBM。前些年各大公司优化员工的时候都藏着掖着,而且用词很含蓄,都说是正常的人...

2019-06-20 17:25:56 759

原创 Android 上唯一好用的图片标注 App:马克标注

不同于 iOS 平台上图片标注类应用百花齐放的局面,Android 平台上「能用」的图片标注应用少之又少,功能全面、体验优秀的更是凤毛麟角。因此如果你也在苦寻一款好用、高效且功能丰富,支持高亮、打码、笔刷甚至放大等功能的图片标注应用,今天介绍的「马克标注」也许就是当前我们的唯一选择。基础功能和大部分图标标注类应用一样,马克标注支持箭头、笔刷、添加图形等基础功能,所有标注工具都支持更换不...

2019-06-19 21:11:39 8203 1

原创 Android开发——如何设计开发一款Android App

本文从开发工具选择,UI界面、图片模块、网络模块、数据库产品选择、性能、安全性等几个方面讲述了如果开发一个Android应用。现在整理出来分享给广大的Android程序员兄弟们。开发工具的选择开发工具我将选用 Android Studio,它是Google官方指定的Android开发工具,目前是1.2.2稳定版,1.3的预览版也已经发布了。 Android Studio的优点就不需多说...

2019-06-19 20:48:33 1150

转载 Android 性能测试这样做,新手离开挂人生也不远了

Android性能测试,跟pc性能测试一样分为客户端及服务器,但在客户端上的性能测试分为2类,对于应用性能测试,包括很多测试项,如启动时间、内存、CPU、GPU、功耗、流量等。但针对rom版本的性能测试,一般关注功耗。一、不同版本的性能测试1、rom版本的性能测试rom版本一般就关注功耗测试,不过rom版本的功耗测试跟应用的功耗测试会有所差异,当然只是用例设计方面的差异,工具仍然采用安...

2019-06-19 17:47:26 204

原创 天天给 App 抓包,还不懂 HTTP 代理吗? | 实用 HTTP

一、序今天来和大家一起聊聊 HTTP 代理。在 HTTP 协议中,最基础的就是请求和响应的报文,而报文又由报文头和报文实体组成。大多数 HTTP 协议的使用场景,都是依赖设置不同的 HTTP 请求/响应 的 Header 来实现的。既然要说到代理,先提两个问题来当主线,从问题出发讲解 HTTP 代理。 抓包工具是如何实现 HTTP 抓包的。 对于 HTTPS 流量,...

2019-06-18 21:31:46 493 1

原创 为什么老程序员的效率如此高?编程速度快,Bug数量又少?

为什么老程序员编程速度快,Bug数量少?之前看到一位程序员讲到:2个月前公司有一个35+的老程序员入职,和项目主管一个年纪,但是还是干技术,基本没话,就是干自己的。公司暂时还没有让他挑大梁,观察了他2个月,发现那个老程序员手速不快,鼠标不快,码字不快,看他的代码,中规中矩也没有什么特别的地方,但是工作进度就是快很多。。。我想说的是,老程序员不是APM比你高,也不是思维比你快(纯指反应速...

2019-06-18 21:04:49 2216 1

原创 揭秘:Android屏幕中你不知道的刷新机制

前言之前在整理知识的时候,看到android屏幕刷新机制这一块,以前一直只是知道,Android每16.6ms会去刷新一次屏幕,也就是我们常说的60fpx,那么问题也来了:16.6ms刷新一次是什么一次,是以这个固定的频率去重新绘制吗?但是请求绘制的代码时机调用是不同的,如果操作是在16.6ms快结束的时候去绘制的,那么岂不是就是时间少于16.6ms,也会产生丢帧的问题?再者熟悉绘制的朋友...

2019-06-17 22:04:53 407

原创 刷抖音上瘾后,决定探究如果做一款类似抖音短视频app

一、短视频内容生产优质短视频内容的产生依赖于短视频的采集和特效编辑,这就要求在进行抖音APP开发时,用到基础的美颜、混音、滤镜、变速、图片视频混剪、字幕等功能,在这些功能基础上,进行预处理,结合OpenGL、AI、AR技术,产生很多有趣的动态贴纸玩法,使得短视频内容更具创意。视频录制的大致实现流程是先由 Camera 、 AudioRecord 进行最原始的相机画面以及声音的采集,然后...

2019-06-17 21:55:38 578

原创 Android 常见安全漏洞修复理论与实践

前言前段时间公司对应用在爱加密上进行了安全扫描,本文将基于爱加密的漏洞分析报告,针对部分内容,介绍理论修复实践最小化特权准则概念介绍最小化特权准则,即指组件只能供自身应用调用,尽可能禁止其他应用访问及调用。违反最小化特权的危害若组件违反最小化特权准则,则会带来如下危害: 攻击者恶意调用应用的 Activity, 修改程序的状态或关键数据。举个例子,如果您的应用的应用需...

2019-06-17 13:38:07 862

空空如也

空空如也

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

TA关注的人

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