-
从0开始部署使用Gerrit(Ubuntu+nginx+Gerrit+git)
gerrit30.png 简单介绍 gerrit1.png 1.之前 git add -- git commit -- git push 如图中橙色的线 2.gerrit就是上图中的那只鸟,普通成员的代码是被先push到gerrit服务器上,然后由代码审核人员,就是左上角的integrator在web页面进行代码的审核( review ),当
-
Retrofit自定义GsonConverter处理所有请求错误情况
通常从服务端拿到的JSON数据格式大概如下: { code:1, message:查询成功, detail:{aa:123,bb:123,cc:123} } 因此通常我们会定义一个实体类来解析对应的json: public class Response { @SerializedName(code) private int code; @SerializedName(message) priv
-
技术迭代迷茫?Android资深架构师教你如何打破这个局面!
随着5G(第五代移动通信技术)商用进程越来越快,各个芯片和终端厂商们都已经开始布局准备,想必智能手机会是消费者最先能够接触到5G的重要终端,而和其相辅相生的移动互联网也势必会有新的发展。 但是和行业本身的发展不相称的是, Android 开发者的市场需
-
Android现在真的很危险了?不,现在正是Android大干一场的好时机
谁会从 Google 手中抢走 Android? 早在去年,Google 就曾因 Android 移动操作系统涉嫌垄断行为而面临巨额罚款威胁。再加之各类竞争者虎视眈眈,以及跨平台替代框架对原生 Android 的围攻,Google 的日子似乎并不好过。 作为一个曾在 Google 工作了 13 年之
-
手把手教你在Android项目中接入Flutter,在Flutter中使用Android布局
开头 在flutter开发中,始终会有下面两个无法避免的问题: 原生项目往flutter迁移,就需要在原生项目中接入flutter flutter项目中要使用到一些比较成熟的应用,就无法避免去用到原生的各种成熟库,比如音视频之类的 这篇文章,将会对上面两种情况,分别进行
-
Android地图轨迹抽稀、动态绘制
为什么会有这篇文章? 因公司业务调整降低运动门槛,产品部要求引入地图,记录用户的运动轨迹上传至服务器,用户进入记录页面可查看运动轨迹。而且绘制轨迹的时候要求有一个绘制动画(参照咕咚)。听到这心中万只草泥马 ~~~ 可是需求下来了,还是得硬着头皮
-
Android性能优化:抓出卡顿元凶,从分析掉帧开始
这次我们依旧来谈谈有关性能优化的话题,这次我们会用到Google给我们提供的分析工具Systrace。如果你还不了解这个工具,最好先了解一下。Google 官方文档: https://developer.android.com/studio/command-line/systrace 我们还会用到一个Demo,用来对比卡顿
-
Android开发自定义 Behavior,实现嵌套滑动、平滑切换周月视图的日历
使用 CoordinateLayout 可以协调它的子布局,实现滑动效果的联动,它的滑动效果由 Behavior 实现。以前用过小米日历,对它滑动平滑切换日月视图的效果印象深刻。本文尝试用自定义 Behavior 实现一个带有这种效果的日历。 简介 先上个小米日历的图,让大家知
-
探究一下最适合Flutter的项目架构
Flutter作为最近很火的一个跨平台技术,以其高性能、跨平台的一系列优秀特性成功吸引了很多开发者和组织的青睐,但是由于其不同于传统Android或iOS开发的Widget机制,使得视图的代码往往冗长、不够简洁,解决这种困境的方法就是在开发中合理地运用合适的架构
-
关于Android面试的一些事
先简单说说我最近的面试经历吧。面试的公司很多,大部分最后都能得到令人满意的结果,我将这些体会记录下来,面了这么多公司,如果不留下什么,那岂不是太浪费了。对于我来说,这也是一次自我检查,在这次面试中总结经验,认清自己,同时希望这些对即将换工
-
Android的网络请求中的一些基础知识及缓存的应用
HTTP请求和响应相关知识 okhttp和拦截 改造+ okhttp + rxjava的缓存实现 HTTP相关知识 直接贴上裘德的图,犹是我的好老师 请求包巴纽 例子巴纽 响应包巴纽 例子巴纽 请求头描述了客户端向服务器发送请求时使用的HTTP协议类型,所使用的编码,以及发送内容的
-
Android 直播播放器+弹幕使用总结
又来写文章了,懒癌晚期拖啊拖总抽出点时间来,直播算是现在比较火了,公司最近也要开发直播的功能。在这里分享下开发过程遇到的一些问题以及解决方案。 项目地址https://github.com/Hemumu/HLiveDemo/tree/master 现在有很多的开源播放器,本文所选的是基于
-
Android Native 内存泄漏系统化解决方案
导读 :C++内存泄漏问题的分析、定位一直是Android平台上困扰开发人员的难题。因为地图渲染、导航等核心功能对性能要求很高,高德地图APP中存在大量的C++代码。解决这个问题对于产品质量尤为重要和关键,高德技术团队在实践中形成了一套自己的解决方案。 分
-
移动端工程架构与后端工程架构的思想摩擦之旅
架构思考 一直以来对软件工程架构有着极大的兴趣,无论是之前负责的移动端Android工程,亦或是现在转到后端开发后维护的资源投放工程。可以说一个团队中并非每个开发都能够深入掌握架构知识,但需要每个人能够拥有软件架构的意识。架构是对工程整体结构与组
-
Android开发只要学会它,再多 Bug 也不怕
前言 对于一名开发者来说,找出并处理掉Bug是不可或缺的能力。能够熟练的调试程序将大大提升开发的效率。学好DeBug,再多Bug也不怕。Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程
-
Android开发RxJava 3.X来袭,请做好准备~
每个Android开发者,都是爱RxJava的,简洁线程切换和多网络请求合并,再配合Retrofit,简直是APP开发的福音。不知不觉,RxJava一路走来,已经更新到第三大版本了。不像RxJava 2对RxJava 1那么残忍,RxJava 3对RxJava 2的兼容性还是挺好的,目前并没有做出很大
-
阿里内部Android规范文档参考
前言 一份合格的代码不应只满足于实现功能, 更应该遵循良好的规范. 遵循良好的代码规范有利于: 提升程序稳定性, 减少代码隐患, 降低故障率; 增强可扩展性, 大幅提高维护效率; 统一标准, 提升多人协作效率; 方便新人快速上手, 在项目组人员发生变动时保证项目
-
自定义Behavior的艺术探索-仿UC浏览器主页
最近几个周末基本在研究 CoordinatorLayout 控件和自定义 Behavior 当中,这期间看了不少这方面的知识,有关于 CoordinatorLayout 使用的文章,CoordinatorLayout 的源码分析文章等等,轻轻松松入门虽然简单,无耐于网上介绍的一些例子实在是太简单,很多东
-
为什么 Flutter 是跨平台开发的终极之选
跨平台开发是当下最受欢迎、应用最广泛的框架之一。能实现跨平台开发的框架也五花八门,让人眼花缭乱。 最流行的跨平台框架有 Xamarin、PhoneGap、Ionic、Titanium、Monaca、Sencha、jQuery Mobile、React native、Flutter 等等。但这些工具的表现也是高低有
-
Android 的 Drawable 读书笔记
1 Drawable简介 Drawable表示的是一种可以在Canvas上进行绘制的抽象概念,它的种类有很多,最常见的就是颜色和图片。优点:使用简单,比自定义View成本低很多,非图片类型的Drawable占用空间较