安卓开发架构

安卓开发架构群:936332305(面试资源与经验总结,BAT内推,高级UI、性能优化、架构师课程、NDK、混合式开发全方 面的 Android高级实践技术讲解以及在线答疑等。)...

Android 多模块多组件开发 - 打造属于自己的路由

一.基本介绍 借此机会分享一下自己从刚入门到现在,在开发架构方面的一些心路历程。最终我会把这部分代码进行开源,以后也会对其进行维护。但目前尚在测试中所以并未发布正式版本。我们可以先把代码下载下来进行了解,如果有什么问题可以随时 Issues,这也将是我的第一个开源库,希望能帮到大家。 该库...

2019-02-20 22:17:52

阅读数 4

评论数 0

光速理解HTTP和OKHTTP,两开花(适用于安卓开发者)

情景引入 码农甲:这okhttp里面的方法到底什么乱七八糟的?什么Request,什么Post,我意思都不知道我还怎么用它啊卧槽。 HTTP:超文本传输协议 理解:这个经常出现在浏览器地址栏的到底是个啥?为什么需要这样一个协议? 假设一台计算机就是一个人,并且拥有各自的口音,那么他们能正常交流...

2019-02-20 21:32:03

阅读数 11

评论数 0

1 行代码,搞定按钮重复点击难题

App中,有很大一部分场景是点击按钮,向服务端提交数据,由于网络请求需要时间,用户很可能会多次点击,造成数据重复提交,造成各种莫名其妙的问题。 同时如果你是hmi开发,在很多时候也需要此项操作。 因此,防止按钮多次点击,是Android开发中一个很重要的技术手段。 以前的处理方式 网上查找到的,或...

2019-02-20 21:26:34

阅读数 16

评论数 0

APP上架到各大应用市场技巧

最近在倒腾了几个月的APP上架到苹果和安卓市场,这里把经验给大家共享一下。 1.安卓各大应用市场都需要软件著作权,而且基本上都要实名制,实名制的信息得与著作权一致就是公司的完全一致。所以APP开发期间,就应该着手申请著作权,基本上最便宜300块可以搞掂,加急的话几千到上万都可能。一般建议打好提前量...

2019-02-20 21:09:07

阅读数 8

评论数 0

代码重构的场景总结

核心思想:拆细、公用 重构可以是修改变量名、重新安排目录这样简单的物理重构,也可以是抽取子函数、精简冗余设计这样稍许复杂的逻辑重构。但均不改变现有代码的功能。 了解敌人——丑陋的代码 臃肿的类 开发者缺乏对最基本的编码原则,即“单一职责原则”(SRP)的理解。开发者不去思考这些功能是不是应该放在这...

2019-02-20 21:04:59

阅读数 12

评论数 0

APP上架到各大应用市场技巧

最近在倒腾了几个月的APP上架到苹果和安卓市场,这里把经验给大家共享一下。 1.安卓各大应用市场都需要软件著作权,而且基本上都要实名制,实名制的信息得与著作权一致就是公司的完全一致。所以APP开发期间,就应该着手申请著作权,基本上最便宜300块可以搞掂,加急的话几千到上万都可能。一般建议打好提前...

2019-02-20 16:35:50

阅读数 6

评论数 0

Android 通用的组件自动注册、自动初始化解决方案

背景问题 我们在组件化的过程,业务被拆分至独立的Module中,一些公用组件会在各个Module中通过APT生成一些需要被注册至组件中的信息类,比如EventBus生成的Index类。我们这边RN定制的Plugin是跟随各自module,需要被注册。还有,各Module对外提供的api接口的话,也...

2019-02-19 20:34:23

阅读数 5

评论数 0

最简单有效的低侵入性的 Android 组件化方案

本组件化方案已开源在github,欢迎转载和star。https://github.com/beyondxia/modules 传统组件化方案问题 上篇中我们对传统的组件化方案的实现原理进行了简单的介绍,以及对其优缺点进行了相应的分析。针对接口通信机制的方案,有如下缺点: a、需要提供一个公共的目...

2019-02-19 20:07:47

阅读数 226

评论数 0

看似无用,实则重要的Gradle Wrapper

原文来自微信公众号:刘望舒 1.为什么需要Gradle Wrapper Gradle Wrapper称为Gradle包装器,是对Gradle的一层包装。为什么需要Gradle Wrapper呢?比如在一个开发团队中,如果每进来一个成员,都需要在计算机中安装Gradle,这个时候运行Gradle...

2019-02-19 15:53:46

阅读数 8

评论数 0

通俗易懂的Gradle插件讲解

原文来自微信公众号:刘望舒 1.Gradle插件概述 说到Gradle插件前,我们先要了解下什么是插件。在Android进阶三部曲第二部《Android进阶解密》一书中,我为了讲解插件化的原理,讲解了什么是插件,我们先来看看下面这张图。 可以看到初始的机器人只有照相、地图、浏览器、计算机等功...

2019-02-19 15:36:49

阅读数 13

评论数 0

为什么阿里巴巴不建议在for循环中使用"+"进行字符串拼接?

本文,也是对于Java中字符串相关知识的一个补充,主要来介绍一下字符串拼接相关的知识。本文基于jdk1.8.0_181。 一、字符串拼接 字符串拼接是我们在Java代码中比较经常要做的事情,就是把多个字符串拼接到一起。 我们都知道,String是Java中一个不可变的类,所以他一旦被实例化就无法被...

2019-02-18 16:51:54

阅读数 7

评论数 0

字节跳动Android实习面试凉凉经

分享小伙伴:简书 Rreply 一面问的 Java 和 Android 基础 Jvm虚拟机 messageQueue会不会阻塞ui线程 对象锁和类锁 之字形打印树 还有其他的记不清了,主要是我对二面印象太深刻了。 二面问的 Flutter 和 Dart dart是值传递还是引用传递 Wi...

2019-02-18 16:33:00

阅读数 13

评论数 0

“丧心病狂”的混淆操作!

我们一般发布项目出去都去做混淆的操作,一方面优化一下代码,减少一下Apk体积;另一方面,让自己的源码逻辑不会那么容易被识别出来。 刚巧在wanandroid群里,看到有同学讨论空白混淆的操作,于是搜集了一波比较好玩的混淆词典。 原理很简单,我们混淆是可以配置词典的,所以就当是图个乐了。 我特意找了...

2019-02-18 16:03:22

阅读数 6

评论数 0

使用Nexus2搭建私有Maven仓库

前言 本文梳理了一些使用Nexus搭建Maven私服的方法。Maven私服Nexus的作用,主要是为了节省资源,在内部作为Maven开发资源共享服务器来使用。另外Nexus3和Nexus2之间存在较大差异,因此本方法只适用于Nexus2.x,Nexus3请绕开。更多说明请参考官网 https:/...

2019-02-18 15:57:45

阅读数 7

评论数 0

为什么Looper中的Loop()方法不能导致主线程卡死?

关于 Handler 的问题已经是一个老生常谈的问题, 网上有很多优秀的文章讲解 Handler, 之所以还要拿出来讲这个问题, 是因为我发现, 在一些细节上面, 很多人还都似懂非懂, 面试的时候大家都能说出来一些东西, 但是又说不到点子上, 比如今天要说的这个问题: 为什么Looper 中的 l...

2019-02-18 15:32:44

阅读数 9

评论数 0

你会经常遇见的android性能优化方面知识总结

项目源码 目录 布局优化 绘制优化 内存泄漏优化 ListView和Bitmap优化 布局优化 减少布局文件的层级 删除布局中无用的控件和布局 尽量使用简单高效的ViewGroup,比如FrameLayout和LinaerLayout 可以使用include标签复用布局,使用merge标签减...

2019-02-15 16:00:27

阅读数 1570

评论数 0

Android通用业务弹窗管理方案PopLayerV2

前言 上回讲到了 业务弹窗管理的Dialog形式 有兴趣的同学 可以点击这里去往上一篇文章了解回顾一下 这回的PoplayerV2版本是在此前Dialog基础上拓展了一部分同学关心的透明webview弹窗实践效果 春节几天假期加上上班休息的时间一点点的码总算跟上计划的进度了 这里是此项目的Gith...

2019-02-15 15:00:05

阅读数 10

评论数 0

Android通用业务弹窗管理方案PopLayerV1

前言 在android圈里关于弹窗的开源框架还是挺多的,但是大多数扩展都是针对于样式,像是一种类型的弹窗开发者传入不同的参数就能在UI效果上显示不同的特效,这样的扩展的确是十分方便但在我们具体工作业务开发中,UI对弹窗样式的追求上 就显得有些鸡肋,基本上业务场景每种类型的弹窗界面效果都大不相同做不...

2019-02-15 14:35:34

阅读数 25

评论数 0

官方提供的自动改变文本大小的“TextView”

关于AutoSizeableTextView 公司上个版本中有这样一个需求,要求在一个列表中的每个条目中展示字数不限个数的文本。而且每个条目的宽度都是固定的,展示的文本如果过长,不可以用省略号显示,只能动态的调整(缩小)文本的字号来达到文本能完全显示的效果,而且要限一行展示。关于这个效果,其实目前...

2019-02-14 21:44:50

阅读数 16

评论数 0

Myers 差分算法 —— Android DiffUtils 之实现(二)

上一篇看这里: Myers 差分算法 (Myers Difference Algorithm) —— DiffUtils 之核心算法(一) 我们在上文简单的介绍了下 Myers 差分算法的原理,至少知道了他是怎么一回事,我们知道寻找最远的点方法有两个,一个是采用最短路径或者广度优先搜索算法,另...

2019-02-14 16:34:40

阅读数 14

评论数 0

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