自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

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

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

2019-08-28 16:01:58 602

原创 再学一次ConstraintLayout 一些新特性

平时使用ConstraintLayout,断断续续的,基本都是在自己的小demo里面使用.公司的项目暂时还没有使用.这次公司项目需要大改,我决定用上这个nice的布局.减少嵌套(之前的老代码,实在是嵌套得太深了…无力吐槽).首先,ConstraintLayout是一个新的布局,它是直接继承自ViewGroup的,所以在兼容性方面是非常好的.官方称可以兼容到API 9.可以放心食用.一、Re...

2019-08-27 17:03:03 136

原创 Android屏幕适配很难嘛?其实也就那么回事

前言作为一个Android开发人员,你还在为了适配各种尺寸的屏幕而苦恼吗?你还在为了出现一个新的机型而修改着数不尽的dimens和layout吗?你还在为了UI给的奇葩尺寸的设计图而绞尽奶汁计算距离吗?如果你为了这些事情而苦恼,那么看完这篇文章,希望可以帮你减少开发时间,减缓生命的流逝速度。不知道大家有没有看过前一段时间今日头条技术团队发表的一篇关于Android屏幕适配的文章:一种极低成本的...

2019-08-26 14:39:49 151

原创 备战金九银十:Android面试知识点总结宝典助你通关!

Android中的四大组件以及应用场景Activity:在Android应用中负责与用户交互的组件。Service:常用于为其他组件提供后台服务或者监控其他组件的运行状态。经常用来执行一些耗时操作。BroadcastReceiver:用于监听应用程序中的其他组件。ContentProvider:Android应用程序之间实现实时数据交换。1、Activity的生命周...

2019-08-23 18:07:34 623

原创 性能优化(一)APP 启动优化(不敢说秒开,但是最终优化完真不到 1s)

简介性能优化的目的不是为了优化而优化,而且为了以后不再优化, 给自己统一 一个标准。这里也许会有人问 APP 启动还需要优化吗?启动又不是我们自己写的代码,难道 Google 工程师会犯这么低级的错吗?其实这还真不是 Google 的错,应该说是给我们开发者留了一个坑吧。应该有的同学知道是怎么一回事儿了,当我们在系统桌面任意点击一个 APP 是不是会发现启动的时候有一瞬间有白屏出现(以前老版本...

2019-08-23 15:26:52 315

原创 来学习了解下Flutter及Dart 编码规范?

dart官方文档中的 【Effective Dart】规范主要分为四个部分:样式规范文档规范使用规范设计规范每个部分都有许多的例子说明,每个例子都会以下面五个词中的某些作为开头:DO :表示你需要遵守的做法DONT :表示这样的做法是非常不好的PREFER :在多数情况下,都推荐的做法AVOID: 在多数情况下,都应该避免的做法CONSIDER: 需要你自己去斟酌的做法...

2019-08-22 17:09:32 224

原创 这是一份非常适合收藏的Android进阶/面试重难点整理!

写在前面记得我大二时“不务正业”地自学Android并跟了老师做项目,到大三开始在目前的公司实习,至今毕业已有几年多,学习Android已经6、7年多了!但总感觉知识点很零散,并且不够深入,遇到瓶颈,所以有了这文章。本文是我对自身的Android编程技能的总结、思考和反省,意在系统地、深入地学习Android的重难点,使自己的能力上一个台阶。下面我将会罗列Android知识体系中比较高频、重...

2019-08-22 14:45:37 236

原创 扯一扯HTTPS单向认证、双向认证、抓包原理、反抓包策略

HTTP(HyperText Transfer Protocol,超文本传输协议)被用于在Web浏览器和网站服务器之间传递信息,在TCP/IP中处于应用层。这里提一下TCP/IP的分层共分为四层:应用层、传输层、网络层、数据链路层; 分层的目的是:分层能够解耦,动态替换层内协议各个层包含的内容:应用层:向用户提供应用服务时的通讯活动(ftp,dns,http)传输层:网络连接中两台计算机的数...

2019-08-21 17:46:57 175

原创 组件是如何通信的?揭秘ARouter路由机制

面试官: 有没有使用过组件化,组件化通信如何做到的,ARouter有用过吗心理分析:组件化一般在架构经常被考到,组件化的内容比较多,跟我们平时的开发mvc的单体应用不一样,组件化是团队作战,需要设计复杂的组件通信与交互求职者: 从组件化的由来,优势 弊端开始,最后引出组件化的劣势,组件通信1 组件化1.1 组件化初衷APP版本不断的迭代,新功能的不断增加,业务也会变的越来越复杂,维...

2019-08-21 15:59:01 575

原创 Android 须知2019流行的框架库及开发语言

我们在总结过去的同时,也要展望一下未来,来规划一下今年要学哪些新技术。这几年优秀Android的开源库不断推出,新技术层出不穷,需要我们不断去了解和掌握,在提高自身开发水平的同时,我们需要付出更多学习精力和时间。俗话说,打铁还需自身硬,为了在这个日新月异的技术时代为了生存不被淘汰,必须要求自身掌握的技术不断跟进时代脚步,所以我们必须付出才能得到回报,说没有时间去学习的人永远都会有找不完的借口。好...

2019-08-20 16:58:27 206

原创 在腾讯面试,被问到组件化如何实现,组件化与插件化的差别在哪里,该怎么选型?

面试官: 组件化如何实现,组件化与插件化的差别在哪里,该怎么选型心理分析:面试官从架构层次 了解求职者是否用过 模块化 组件化 和插件化,在过去经验有没有运用过这些技术到项目中,这道题属于一个连环炮。求职者该格外小心求职者:应该从App开发的需求来定义技术选型,分别说说模块化,组件化 插件化的优势和区别先上一份面试资料目录一、组件化组件化,就是把APP拆分成不同功能模块,形成独立组...

2019-08-20 14:51:38 357 2

原创 最好用的安卓按钮

背景按钮应该是我们的App里面最普遍的组件之一了,特别常用。通常我们写一个按钮的套路很简单也很固定。大概分为以下几个步骤:在xml布局里面按照设计稿的尺寸位置写一个Textview按照设计稿规定的颜色和圆角在drawable目录下创建一个shape文件将这个shape文件作为Textview的背景这样一个很标准的按钮就诞生了,然后就可以继续愉快的开发了。这本来没有什么问...

2019-08-19 17:18:23 643

原创 2019最新Android中级面试题目汇总解答

注:因为实际开发与参考答案会有所不同,再者怕误导大家,所以这些面试题答案还是自己去理解!面试官会针对简历中提到的知识点由浅入深提问,所以不要背答案,多理解。Android进阶延伸点1、如何进行单元测试,如何保证App稳定 ?参考回答:要测试Android应用程序,通常会创建以下类型自动单元测试本地测试:只在本地机器JVM上运行,以最小化执行时间,这种单元测试不依赖于Android...

2019-08-16 21:51:22 1139

原创 字节跳动Android面试:直播中 网速比较差的条件下,如何使画面保证流畅的效果

面试官: 直播中 网速比较差的条件下,如何使画面保证流畅的效果岗位场景心理分析:“ 网速比较差的条件下,如何使画面保证流畅的效果” 该问题可以转换成一个优化问题。直播技术最难的是优化,接下来我们从五个方面来进行直播优化求职者: 遇到优化问题 一定要淡定,一步一步 调理清晰。面试官也不会完全记得有几种优化,他只是试探你 看你了不了解。如果遇到该问题 说话卡顿 结巴,面试官可以下定决...

2019-08-16 15:53:33 528

原创 开发过程中项目是否需要重构?又需要注意什么?

重构是需要慎重考虑的,不是拍脑子决定的事情!一、引言程序员都有一颗工程师的心,所以当他们到一片新的场地想做的第一件事就是,将旧的一切推倒重来。是的,他们觉得旧代码异常混乱,因为读代码更难,宁愿丢掉旧代码重新写,也不愿意修修补补,他们认为旧代码简直一团糟。我觉得这个出发点是好的,但我观察了非常多的案子,那些重构的项目大多数是失败的,相当一部份都成了烂尾。他们从头开始再写一遍并不意味着会写...

2019-08-15 17:20:03 341

原创 Android 高质量开发之崩溃优化

做了很久的面试专题,不知道对各位需要面试和有跳槽想法的小伙伴有没有帮助,今天收集一篇关于崩溃优化方面的文章,面试方面的收集,后续我还会持续更新如果觉得有用可以点个关注前言开发人员碰到 APP 崩溃(闪退)什么办?不少人会说根据 Log,找到闪退的代码,捕获异常,“消化”掉了所有 Java 崩溃。至于程序是否会出现其他异常表现,那是上帝要管的事情。是的,这种方法对于紧急情况下不失为一种解决办...

2019-08-15 14:49:36 128

原创 架构进阶,Dagger2的原理及使用详解

目录一:Dagger2是什么?二:为什么要有Dagger2三:Dagger2如何使用基本的概念如何使用Dagger2高级用法(1)构造方法需要其他参数时候(2) 模块之间的依赖关系(3) @Named注解使用(4) @Singleton注解(5)自定义Scoped(6)Subcomponent(7)lazy 和 Provider四: MVP + Dagger2...

2019-08-14 17:11:48 267

原创 想成为一名合格Android架构师,你需要掌握这几种设计原则

经常有人问到怎么样才算一名合格的架构师,又需要掌握哪些设计原则呢?今天我们来着重分析一下要成为一名架构师,必须掌握的 10 条设计原则。一、遵循单一职责原则函数是程序员的工具中最重要的抽象形式。它们能更多地被重复使用,你需要编写的代码就越少,代码也因此变得更可靠。较小的函数遵循单一职责原则更有可能被重复使用。二、尽量减少共享状态应该尽量减少函数之间的隐式共享状态,无论它是文件作用...

2019-08-14 15:03:09 137

原创 在Android项目中接入Flutter,在Flutter使用安卓布局

开头在flutter开发中,始终会有下面两个无法避免的问题:原生项目往flutter迁移,就需要在原生项目中接入flutterflutter项目中要使用到一些比较成熟的应用,就无法避免去用到原生的各种成熟库,比如音视频之类的这篇文章,将会对上面两种情况,分别进行介绍在Android中接入flutter界面在android项目中需要将flutter以module的形式接入创建flu...

2019-08-13 17:35:56 350

原创 Android性能优化面试题集锦

前言很多人面试之前,可能没有在互联网公司工作过或者说工作过但年头较短,不知道互联网公司技术面试都会问哪些问题? 再加上可能自己准备也不充分,去面试没几个回合就被面试官几个问题打蒙了,最后以惨败收场。下述是我收录整理的Android面试题汇总,由于篇幅原因,在这只把性能优化部分的题目列举出来,后续还会更新其余面试题内容,大家可以关注一下我,及时知晓我更新的知识点,同时这份面试集锦的整理也花费了...

2019-08-12 16:28:42 1269

原创 Kotlin + 协程 + Retrofit + MVVM优雅的实现网络请求

前言最近一直在修炼Kotlin,说实话真香真好用,刚好公司准备交给我一个新项目,于是打算直接用Kotlin来构建项目。刚好整体架构搭建完毕了,于是把网络请求这一部分先分享给大家。这次使用到的是 协程+ retrofit +mvvm的模式,我这儿直接用一个简单的demo来看一下具体的实现方式吧。文章只是描述实现思路,需要demo的直接跳到文末。项目配置首先先引入所需要的依赖implemen...

2019-08-12 15:22:39 439 1

原创 Flutter实现抽屉动画

这篇会深化View拖拽实例,利用Flutter Animation、插值器以及AnimatedBuilder教大家实现带动画的抽屉效果。先来看效果:通过构思,我们可以设想到实现抽屉的方式就是用Stack控件将两个Widget叠加显示,用GestureDetector监听手势滑动,动态移动顶层的Widget,当监听到手势结束的时候根据手势滑动的距离动态将顶部Widget利用动画效果滑动到结束位置...

2019-08-09 17:30:09 297

原创 职业生涯中,BAT这种大厂履历意味着什么?6点告诉你!

有人问,为什么想要投递大厂,总结一下大概有这么几个出发点:1.追求高薪资相对小厂而言,大厂的薪资水平会更高不少。具体数字区间就不细说了,但是大厂整体会大方很多,只要你能够通过面试,30%甚至更高的涨薪都有机会拿到,更何况,大厂的年终奖也不会被“无良”老板随意克扣。2.追求稳定去年整体大环境不行,很多公司裁员,尤其是不太盈利的中小厂,比如某团、某滴。而对于大厂而言,裁员的概率会小很多,毕...

2019-08-09 16:26:36 2343

原创 每日一道面试题,2019Android大型Bat面试知识分享

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

2019-08-08 19:41:50 126

原创 Android打包之多版本、多环境、多渠道

在平时的Android开发中,我们经常会遇到在不同网络环境(比如:开发环境、测试环境)之间的切换、一次打多个渠道包等需求,如何优雅的管理网络环境的配置?如何快速的打出多个渠道包?这是一个值得研究的问题。如果每一次在不同网络环境间切换,都需要更改代码,然而重新打包,那未免有点低效。下面是我的实践探索,看网上很多人都是根据buildType来切换网络环境,感觉有点不好,因为网络环境可能很多种,而...

2019-08-08 16:37:41 363

原创 Flutter之撸一个漂亮的登录界面的总结

介绍最近学习了Flutter的一些控件使用,然后在Github上面看见了一个挺漂亮的登录界面,于是就用Flutter自己模仿地实现了一下。原作者做得比较好看,不过只是单纯实现界面。所以自己加了些东西,比如Key的使用和InheritedWidget的使用。下面是一些总结,如果有说错的地方,还请各位指出来,谢谢。最终的展示界面代码结构每个类的名字,相信大家一看就知道对应的作用类。每个...

2019-08-06 18:00:09 577

原创 8年Android开发程序员教你如何写简历!看完别再问为何你只值5K

每年这个时候,就会有大量的程序猿、攻城狮、产品汪等等准备换一个新环境。而换环境的第一个门槛就是如何写好一份简历很多小伙伴私下问我,前端都学得差不多啦,想去面试看看,但是简历投出去都石沉大海了。本篇文章让我从写好简历到如何面对面试官做一个小小的解析,祝你一臂之力吧!还有一些人,看完别再问为何你只值5千了!我们写的简历,第一页上半页,前三行,务必需要表明自己的技术栈。而后可以针对自己的技术能力...

2019-08-06 14:49:29 1701

转载 Android实现Rxjava2+Retrofit完美封装

去年的时候学习了Rxjava和Retrofit的基本用法,但一直没有在实际项目中运用。今年开做新项目,果断在新项目中引入了RxJava和Retrofit。本篇文章将介绍笔者在项目中对Retrofit的封装。先来看一下封装过后的Retrofit如何使用。RetrofitHelper.getApiService() .getMezi() ...

2019-08-05 17:44:58 392

转载 Android面试心得,已拿到offer

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

2019-08-05 15:54:02 135

转载 2019中级Android开发面试解答之线程篇

注:因为实际开发与参考答案会有所不同,再者怕误导大家,所以这些面试题答案还是自己去理解!面试官会针对简历中提到的知识点由浅入深提问,所以不要背答案,多理解。1.线程池的好处? 四种线程池的使用场景,线程池的几个参数的理解?参考回答:使用线程池的好处是减少在创建和销毁线程上所花的时间以及系统资源的开销,解决资源不足的问题。如果不使用线程池,有可能造成系统创建大量同类线程而导致消耗完内存或则...

2019-08-04 16:43:44 103

转载 Flutter自定义主题并切换保存

现在越来越多的应用程序支持黑/白主题切换了,在Flutter中更是简单,Flutter库中提供了ThemeData.dark和Theme.light两个默认主题。在main.dart初始化MaterialApp的时候直接设置进去即可MaterialApp( title: 'Flutter Demo', theme: ThemeData.light(), hom...

2019-08-04 15:31:37 279

转载 BAT架构师花近十年时间整理的Android核心知识清单(Android岗)

整理了一份Android核心知识点。覆盖了底层开发,架构,性能优化,Flutter大量知识点。如果需要获取到这个【核心知识点整理】文档的话帮忙转发一下然后再关注我得到获取方式吧!...

2019-08-04 14:25:37 93

转载 2019中级Android开发面试设计模式

注:因为实际开发与参考答案会有所不同,再者怕误导大家,所以这些面试题答案还是自己去理解!面试官会针对简历中提到的知识点由浅入深提问,所以不要背答案,多理解。1.你所知道的设计模式有哪些?参考回答创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十...

2019-08-03 17:18:23 158

转载 手写消息总线LiveDataBus,让你永无后顾之忧

做了很久的面试专题,不知道对各位需要面试和有跳槽想法的小伙伴有没有帮助,今天收集一篇关于LiveDataBus方面的文章,面试方面的收集,后续我还会持续更新如果觉得有用可以点个关注Android四大组件和线程间通信方式有很多,比如Handler管道、广播、接口回调、rxBus、EventBus等,但是这些方式都存在一些瑕疵,(比如EvebtBus可能现在用的人比较少了,个人见解可以能算半个过...

2019-08-03 15:34:28 459

原创 给Android程序员的一些面试建议

前言应大家的邀请,写一篇关于Android面试相关的博客,需要说明的是本文只针对Android应用开发,不针对rom开发以及逆向工程。我想面试对于程序员来说是很重要的一件事件,面试结果的好坏直接决定了能否进入某个公司以及以什么级别和待遇进入某个公司。我参加面试的经验并不多,但是以面试官的身份面试别人倒是有很多次,所以我可以结合这些经验来介绍下如何更好地把握一个面试。什么是合适的候选者在介绍如...

2019-08-02 16:46:45 102

原创 Android应用架构演变

引言总结了多年的移动开发经验,特别是在Android端的积累,以前认为从移动端APP谈架构,其实有点举大旗,因为大部份项目都在做业务理,且往往不是很大,并没有多复杂的数据处理或高并发(只针对个人而言);并且长期认为架构这个词,用在Web端或者大型系统里比较好一点,好的架构好,意味系统更稳健、高效率, 更大体量。总之,有种大材小用的感觉,然而,随着Android应用开发规模的扩大,客户端业务逻辑也...

2019-08-02 14:19:47 117

空空如也

空空如也

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

TA关注的人

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