![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
开发经验
qq_43257419
这个作者很懒,什么都没留下…
展开
-
Android 开发面经,历时两月斩获BAT+头条四个公司 Offer
拿了 BAT+头条 四个 offer;同时也在帮公司招聘,筛选简历并面试。对技术面试这回事有一些体会,在此分享。 坦白说,我对我个人在这次求职中的表现并不十分满意,面试前没有做足够充分的准备——数次被面试官出的题目“虐”、应对面试的压力时没能做到沉着冷静、在面试中未能完整地把自己的积累与优势表现出来……所以本篇文章并不是一个“成功者”的经验分享,而是一个普通人经历过各种面试后的一个总结与反...原创 2019-01-18 14:50:20 · 374 阅读 · 0 评论 -
Android 日常开发总结的技术经验
1. 全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。 2.数据库表段字段常量和SQL逻辑分离,更清晰,建议使用Lite系列框架LiteOrm库,超级清晰且重心可以放在业务上不用关心数据库细节。 3. 全局变量放全局类中,模块私有放自己的管理类中,让常量清晰且集中. 4. 不要相信庞大的管...原创 2019-01-08 15:34:59 · 119 阅读 · 0 评论 -
Android开发者要换多少次工作,才能心满意足?
在 IT 界流传着这么一句话:要想涨工资,那就得跳槽。想从公司得到涨薪,不是没有,有也是很少的。大约在8% 到 25%,但是只有突出贡献的人才能拿到 25%,普通人,能涨10%也就很不错了。技术厉害,不一定能入职心心相念的公司。跑得快的人,不一定是最先到达终点的人。 我们不能一味追求薪资,还要要考虑下发展和成长。一 为什么要跳槽?当有跳槽的想法后,应该好好想想,为什么要离开。暂时...原创 2019-01-24 16:44:17 · 135 阅读 · 0 评论 -
写给有 Android 开发经验的你们
前言不是要你给出每一个问题的标准答案,而是要你给出这个问题的你的、自己的答案。关于简历面试首先要提到的就是简历,简历这个东西真的是一个很深奥的事情,为什么深奥,其实是对像和我这样的人深奥:学历不好、工作经历不好。当然,这和目前技术研发人才需求的大环境也有关系,而且上述两点会越来越影响简历的通过性。说一个真实的事情大家就有概念了,这是一个前同事私下告诉我的,他比我先一年多离开公司,然后到...原创 2019-01-20 20:42:47 · 199 阅读 · 0 评论 -
面试就是你来我往,互相了解!
序首先,每家公司都有不同的公司文化,对技术人员的要求都不尽相同。有的公司希望你踏踏实实干,不需要你很多稀奇古怪的想法,只要按部就班完成功能即可;有的公司则乐意看到员工的创造力,多尝试新技术,用不同方式完成任务。因此,面试者不可能都满足每家公司的要求。其次,程序员一般比较内敛,平时码字多说话少,不容易表达清楚自己的想法和描述事情。不仅是面试者,面试官可能跟你差不多经验,他也会紧张,有时提问题...原创 2019-01-25 19:29:43 · 279 阅读 · 2 评论 -
我学习Android的一些套路
今天我将给大家分享一下我学习Android的一些方法和想法,分享中并不局限于Android哪一块怎么学习。而是一个总体的,普适性的学习套路和方法。希望可以帮助大家解决一些问题。Android需要打好哪些编程基础Java基础(Kotlin) OOP思想与设计模式 Android基础 数据结构与算法 其他,比如JVM相关除了编程基础,我们还需要补充哪些能力喜欢钻研的兴趣 良好的...原创 2019-01-31 15:48:38 · 219 阅读 · 0 评论 -
Android开发如何写出优雅的代码
很多时候我们去面试,人家总会问一个问题,你们公司开发一个app是如何进行技术选择的,app中涉及到了哪些开发模式,谈谈你对mvc、mvp和mvvm的区别。或许在这些问题上每个人有每个人的看法,在我看来把代码写清楚,用简单清晰的方式将要实现的功能写出来就可以了。在去年的时候,我接手公司的移动开发部门,刚开始看代码的时候我是崩溃的,Android和ios的代码中,超过2000行的代码随处可见。在我...原创 2019-01-31 15:54:18 · 194 阅读 · 0 评论 -
Android的View动画
View动画其实就是使ImageView上的图片在隐藏、旋转、缩放、平移通过动画的过程显示。布局代码,设置图片要通过src设置<Button android:text="透明动画" android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="...原创 2019-01-31 16:08:21 · 179 阅读 · 0 评论 -
Android性能优化方案
前言Android性能优化的方案比较多,在开发过程中,主要考虑从以下几个方面优化1.布局优化2.绘制优化3.内存泄漏优化4.响应速度优化5.Listview优化6.Bitmap优化7.线程优化接下来我们从这几个方面为大家简单介绍优化方案1.布局优化大家肯定都知道Android中有许多布局,比如Linerlayout、RelativeLayout等,布局优...转载 2019-01-31 16:15:16 · 127 阅读 · 0 评论 -
Android热修复技术总结
插件化和热修复技术是Android开发中比较高级的知识点,是中级开发人员通向高级开发中必须掌握的技能,插件化的知识可以查我我之前的介绍:Android插件化。本篇重点讲解热修复,并对当前流行的热修复技术做一个简单的总结。热修复什么是热修复?简单来讲,为了修复线上问题而提出的修补方案,程序修补过程无需重新发版!技术背景在正常软件开发流程中,线下开发->上线->发现bu...转载 2019-01-31 16:18:34 · 257 阅读 · 0 评论 -
面试完 BAT等数十家公司,我想谈谈关于 Android 面试那些事
一. 本文目的笔者将在本文中就Android开发工程师这一岗位,结合自己最近跳槽的经历,谈一谈自己对于面试的一些看法,希望能帮助到正在跳槽中的你们,也给自己的金三跳槽之旅划个圆满的分号。 注:本文适合工作三年以内的职场菜鸟观看,尤其针对想从小公司到大公司(更准确的说,是从普通公司到优质公司)的情况,大神或骨灰玩家可以关掉了。 二. 背景介绍2.1 个人经历抛开背景谈面试...原创 2019-01-31 16:33:45 · 180 阅读 · 0 评论 -
Android Fragment 的妙用 - 优雅地申请权限和处理 onActivityResult
一 前言Fragment,简称碎片,可以简单地认为它就是一个“控件”,更加具体一点就是“View控制器”。它自身有生命周期。在开发中,我们经常用到,再熟悉不过了。然而,Fragment 的一些巧妙引用,不知道你是否了解过?使用 Fragment 封装权限申请 使用 Fragment 优雅处理 onActivityResult Activity reCreate 的时候用来存储数据这篇...原创 2019-01-27 21:38:20 · 241 阅读 · 0 评论 -
全面了解Flutter
为什么Flutter选择使用Dart语言?Flutter在四个主要维度进行了评估,并考虑了框架作者、开发人员和最终用户的需求等因素。我们发现不同的语言在不同的层面符合一部分需求,但Dart在所有评估维度上得分都很高,并且符合我们的所有要求和标准。Dart运行时和编译器支持Flutter的两个关键特性的组合:基于JIT的快速开发周期:允许使用类型的语言进行形状更改和有状态的热重载;以及AOT...原创 2019-01-27 22:02:04 · 283 阅读 · 0 评论 -
Flutter和Android中的View
在Android中,View是屏幕上显示的所有内容的基础, 按钮、工具栏、输入框等一切都是View。 在Flutter中,View相当于是Widget。然而,与View相比,Widget有一些不同之处。 首先,Widget仅支持一帧,并且在每一帧上,Flutter的框架都会创建一个Widget实例树(译者语:相当于一次性绘制整个界面)。 相比之下,在Android上View绘制结束后,就不会重绘,...原创 2019-01-27 22:06:00 · 982 阅读 · 0 评论 -
在IDE中开发Flutter应用
安装和设置请按照编辑器设置说明安装Dart和Flutter插件。Updating the plugins对插件的更新将定期发布。当更新可用时,您在IntelliJ中会收到提示。手动检查更新:打开 preferences (IntelliJ IDEA>Check for Updates… on macOS, Help>Check for Updates… on Lin...原创 2019-01-28 15:38:40 · 786 阅读 · 0 评论 -
Flutter开发和工具之如何发布Android版APP
在典型的开发周期中,您将使用flutter run命令行或者IntelliJ中通过工具栏运行和调试按钮进行测试。默认情况下,Flutter构建应用程序的debug版本。当您准备好为Android准备的release版时,例如要发布到应用商店,请按照此页面上的步骤操作。检查 App Manifest 查看构建配置 添加启动图标 app签名 创建 keystore 引用应用程序中的...原创 2019-01-28 15:44:08 · 1135 阅读 · 0 评论 -
Flutter框架概念
Flutter是什么?Flutter是一款移动应用程序SDK,一份代码可以同时生成iOS和Android两个高性能、高保真的应用程序。Flutter目标是使开发人员能够交付在不同平台上都感觉自然流畅的高性能应用程序。我们兼容滚动行为、排版、图标等方面的差异。 为什么要使用Flutter?Flutter有什么优势?它可以帮助你:提高开发效率 同一份代码开发iOS和Andro...原创 2019-01-28 15:53:17 · 438 阅读 · 0 评论 -
在同一个Activity下实现两个Fragment之间的通信
界面的架构为:一个Activity里面嵌套若干个Fragment,通过侧滑导航栏切换Activity中的Fragment。为什么要把这篇文章单独拿出来而不放在开发笔记中呢,因为感觉这个比较难实现,其实也不是难实现,而是我在写的过程中尝试了几种方法,最终实现了我想要的功能,故在此记下,以免忘记。那么我想实现的功能是什么?我做的是一个翻译app(即将上线),其中想实现通信的是Transla...原创 2019-01-28 16:03:53 · 782 阅读 · 0 评论 -
教你手写消息总线LiveDataBus
Android四大组件和线程间通信方式有很多,比如Handler管道、广播、接口回调、rxBus、EventBus等,但是这些方式都存在一些瑕疵,具体的优缺点如下:那么有没有一种通信方式可以集以上所有框架的优点于一身,并且避免以上缺点呢?答案就是作者今天要分享的livedatabus,livedatabus是基于原生的livedata实现的通信框架,它拥有以下的优点:首先我们来看一...原创 2019-01-28 16:13:32 · 475 阅读 · 0 评论 -
慢慢细谈Android 面试的细节
一 . 前言前段时间,因为团队极度缺人,连续面了不少同学,正好借此分享一下自己对面试的一些浅见。谨代表个人观点,如果您觉得哪里说的不好,欢迎指教和批评~二 . 细节杂谈之所以是细节杂谈,说实话,是因为真的不知道可以写什么,网上关于面试的文章很多,大概看了几篇之后,更不知道写什么了。而根据自己的面试经验来看,发现其实有很多细节,在面试的时候都没有被好好重视起来。所以,这里针对这些细节做个...原创 2019-01-28 16:28:01 · 135 阅读 · 0 评论 -
2019 阿里、头条、腾讯、美团 Android 面试经验分享
1. 前言本文从面试准备、面试技巧等方面分享一些个人经验。希望能给大家带来帮助。 2.面试情况阿里(蚂蚁金服):拿到 offer头条(抖音、火山):拿到 offer美团(美团平台):拿到 offer腾讯(腾讯音乐):二面挂3. 准备这部分将结合我自己的经验,为大家准备面试提供一个参考。3.1 尽早开始准备首先,尽早开始准备。足够的时间是充足的准备的基本保证。不用...原创 2019-01-23 15:40:18 · 127 阅读 · 0 评论 -
Android开发知识之RecycleView使用篇
使用RecycleView的好处从Android5.0开始,google给我们带来了一个全新的列表组件,叫做RecycleView。使得apk几乎已经抛弃了ListView,之所以RecycleView那么强大,总结的主要原因有如下几点:1、提供ViewHolder模式,使得开发者真正操作的是ViewHolder,而不是像ListView中的getView,需要开发者自己setTag和vie...原创 2019-02-21 16:01:26 · 244 阅读 · 0 评论 -
Android开发之项目经验分享
在Android开发中,除了基本的理论知识,还需要将所学知识运用到真实的项目中,在项目中锻炼自己的分析问题、解决问题的能力,本文将总结一下本人项目中遇到的一些问题,总结成章,与大家共勉~~~1、如何拉伸一个图片为一条线项目需求:需要在布局中设置一条分割线,该分割线需要自定义,美工也给了一张图片,那么如何实现?在drawable目录下创建一个repeat.xml:<?xml ...原创 2019-02-21 16:23:34 · 164 阅读 · 0 评论 -
最干货Android开发者成长指南
背景全球互联网引来了一个历史性转折点:根据流量分析工具 StatCounter 的报告,Android 首次超越 Windows,成为用户访问互联网最常用操作系统!Android 不仅在移动领域,在全操作系统内,都成为了当之无愧的霸主!无论你有志于成为领先企业的 Android 工程师,还是靠自己改变世界的独立开发者,现在都是进入这个领域的绝佳时机。Android 技术如此受欢迎的另一个原...原创 2019-02-21 16:29:36 · 238 阅读 · 0 评论 -
Android开发之ListView使用经验分享
在Android开发中,ListView是使用最广泛的组件之一,虽然谷歌推出了RecycleView,但是很多项目中依旧在使用ListView,本文将总结一下使用过程中遇到的一些问题,与大家共勉~~~一、ListView 与 AdapterListVeiw本身是一个容器组件,需要通过Adapter来完成数据的显示,即通过setAdapter方法完成,而这个方法的参数是ListAdapter...原创 2019-02-21 16:47:17 · 193 阅读 · 0 评论 -
Android性能优化来龙去脉总结
一款app除了要有令人惊叹的功能和令人发指交互之外,在性能上也应该追求丝滑的要求,这样才能更好地提高用户体验。以下是本人在工作中对经历过的性能优化的一些总结,依据故事的发展路线,将其分为了5个部分,分别是:常见的性能问题;产生性能问题的一些可能原因;解决性能问题的套路;代码建议及潜在性能问题排查项。一 首先,我们先了解一下都有哪些性能问题1、内存泄露。通俗来讲,内存泄露不仅仅会造成...原创 2019-02-21 16:59:03 · 188 阅读 · 0 评论 -
SDK开发经验之开发习惯
TODOTODO有什么用TODO顾名思义就是要做的事情,一般你当前做不了但是迟早需要做的事,你都可以用TODO标签标记了。尤其是在代码中有改动但是没写完临时有事走开等时候。通过TODO可以高效的找到你认为后续还要确认的代码位置。TODO怎么用TODO标签是目前个人感觉作用最大的一个功能。一般的每个的IDE都会有tasklist。例如下面是eclipse的:当你在代码中添加注...原创 2019-02-21 17:17:34 · 207 阅读 · 0 评论 -
Android 开发必备知识:我和 Gradle 有个约会
一.讲个故事1.1 Ant,我还真以为你是只蚂蚁真正开始近距离接触编程其实是在2012年,年底的时候带我的大哥说,咱们这个 app 发布的时候手动构建耗时太久,研究一下 ant 脚本吧。那个时候连 HashMap 都不知道是啥,可想开发经验几乎为零,一个小小的 ant 脚本看得我真是深深地感受到了这个世界充满的恶意。好在后来硬着头皮搞明白了什么 target 之类的鬼东西,不然就没有然...原创 2019-02-21 17:43:30 · 271 阅读 · 0 评论 -
Android性能优化 上
说明这篇文章是将很久以来看过的文章,包括自己写的一些测试代码的总结.属于笔记的性质,没有面面俱到,一些自己相对熟悉的点可能会略过.最开始看到的性能优化的文章,就是胡凯的优化典范系列,后来又陆续看过一些人写的文章大的框架也是先把优化典范过一遍,记录个人认为重要的点,然后是anly_jun的系列,将之前未覆盖的补充进去,也包括HenCoder的一些课程相关内容.当然除了上面几位,还有很...原创 2019-01-30 15:06:32 · 318 阅读 · 0 评论 -
Android性能优化 中
7.Android性能优化典范-第4季5.数据呈现的顺序以及结构会对序列化之后的空间产生不小的影响改变数据结构对内存及gzip的影响gzip gzip概念:HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术 一般对纯文本内容可压缩到原大小的40% 减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间 o...原创 2019-01-30 15:11:13 · 193 阅读 · 0 评论 -
Android性能优化 下
8.Android性能优化典范-第5季 一.线程 线程就是代码线性执行,执行完毕就结束的一条线.UI线程不会结束是因为其初始化完毕后会执行死循环,所以永远不会执行完毕. 1..如何简单创建新线程: //1:直接创建Thread,执行其start方法Thread t1 = new Thread(){ @Override public void run(...原创 2019-01-30 15:27:53 · 434 阅读 · 0 评论 -
你必知的热修复与插件化背景知识
1. 前言热修复和插件化技术被越来越多的提及,也出现了很多框架。本文并不分析某个具体框架的实现,而是从热修复和插件化想解决的问题入手,从更为宏观的层面梳理了实现这两项技术需要克服的难题及现有的解决思路,有了这些知识作为铺垫可以更好的理解现在市面上一些框架的实现2. 热修复2.1 热修复的目的是什么?开发过程中,我们可能会遇到这样的问题:刚发布的应用就发现了比较严重的 bug,或者有...原创 2019-01-30 15:36:08 · 274 阅读 · 0 评论 -
一个自学Android 人的第三年的面经分享
一.前言最近事情比较多,工作比较忙,同时在自学泰语和前端,精力比较分散。差点这份面经就跳票了,感谢同行的鼓励让我重新提笔。数数这也正好是我入行的第三个年头了,侥幸当年在外包公司得到实习的机会,从此开始了IT生涯。回头看看这三年一步一步走来,真是吃了不少苦头。不知道你们有没有跟我同样的经历,刚毕业的时候什么都不懂,渴望一个机会,去面试当面被面试官批评太差劲。刚入行的时候,没有牛人带,总盼望着...原创 2019-01-30 15:51:08 · 269 阅读 · 0 评论 -
成为android工程师的31+个小技巧
成为Android开发人员很容易,但成为一个成功的Android开发人员,而从其他开发者中脱颖而出。要做到这一点,需要很多努力,激情,奉献和毅力。没有快捷方式或简单的方法,我可以让你成为一个真正成功的开发人员。但是,如果你愿意付出努力和需要的心,你一定会得到你应得的一切成功。在您成为更好的Android开发人员的追求下,这里有一些从我的经验中帮助您的旅程中的一些小巧的专业技巧。所以,如果你...原创 2019-01-30 17:10:40 · 147 阅读 · 0 评论 -
Android性能优化-渲染优化
简介我们在开发的过程中,可能经常会遇到测试的一些反馈,就是APP运行卡顿的问题。我们通常所讲的卡顿问题都是因为渲染掉帧的问题引起视觉上的卡顿感。所以了解渲染机制,我们在项目的开发过程中,可以有意识的少挖坑。同时要打造一款精品的应用,注意渲染优化也是非常重要的一件事情。当然目前我们好多同学在开发的工程中,经常会忽略渲染优化这一块,主要的原因可能是项目没要求,能满足功能则可 缺少意识,没...原创 2019-02-22 16:16:55 · 313 阅读 · 0 评论 -
Android-Activity与Fragmeng的相互传值
这是android开发必须遇到的问题,那么今天我们来探讨一下。Activity传值给Fragment ,通过Bundle。方法一: 一般Framgent都不是单独存在的,所以假设如果我们从ActivityA跳转到FragmentA ,而FragmentA的宿主是MainActivity。 注:Fragment可以根据宿主Activity,Intent直接跳转到其他Activity,而a...原创 2019-02-22 16:32:32 · 214 阅读 · 0 评论 -
Android 动画总结 - Activity 转场动画
对于 Activity,在 startActivity 或 finish 后调用overridePendingTransition(R.anim.activity_in, R.anim.activity_out)对于 Fragment:supportFragmentManager.beginTransaction().setCustomAnimations(R.anim.fr...原创 2019-02-22 16:45:28 · 462 阅读 · 0 评论 -
Android界面绘制原理
Android的Activity界面从何处开始绘制Activity启动之后,灰溜溜的会去跑onCreate,onStart,onResume等生命周期方法,那么从framework里面,让我们看看Activity在onResume之前都在干些啥? 在ActivityThread中的handleResumeActivity方法中先调用了performResumeActivity方法,而perfo...原创 2019-02-22 17:26:44 · 212 阅读 · 0 评论 -
2019最新百度、头条、小米、360、网易、等公司 Android 社招面试题目
一.拼多多"备受争议"的一家电商公司,发展很快,不过这不是我想说的重点,我想说的是,拼多多的两位技术面试官很和蔼(当然hr同学也很好了~),提出的问题很新颖,就拿Handler来说吧,大部分的公司都会直接问,说说你对消息机制Handler的理解,拼多多的提问大概意思是:1,让你设计一个线程池,如果调用者在传入的Runnable任务时,在run方法直接使用了Handler,会发生什么?2...原创 2019-02-27 15:24:57 · 159 阅读 · 0 评论 -
Android热修复技术原理详解(最新最全版本)
本文框架什么是热修复? 热修复框架分类 技术原理及特点 Tinker框架解析 各框架对比图 总结 通过阅读本文,你会对热修复技术有更深的认知,本文会列出各类框架的优缺点以及技术原理,文章末尾简单描述一下Tinker的框架结构。一、什么是热修复?正常开发流程热修复开发流程热修复优势修复什么?二、热修复框架分类现状:百花齐放百家争鸣...原创 2019-02-27 16:49:50 · 117 阅读 · 0 评论