自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

总要有点梦想……

非主流程序员的随笔

  • 博客(13)
  • 资源 (1)
  • 收藏
  • 关注

原创 浅谈Android模块化设计(模块化的一些思考)

在学习模块化的过程中,也在不断思考,同时和一些模块化方案的作者进行了一些交流,记录下自己的一些心得体会。为什么要使用模块化,使用什么样的模块化?我认为使用模块化的原因,从代码层面考虑精髓就是解耦合,从工程项目角度考虑,是为了分组协同,隔离,甚至动态发布这些。所以重点来了,在考量是否需要使用模块化的时候,得首先考虑,代码是否耦合严重,或者是否需要规模分组开发,如果是个人开发者,或者超小团队,引入模块化

2017-03-26 15:40:32 2184

原创 浅谈Android模块化设计(路由框架ARouter源码分析)

首先着重分析下Arouter的源码设计,主要研究这个框架的原因,一个是它算比较新的框架,功能较为全面和强大,并且不断在维护。其次和作者是一个公司的,可以有更深层的交流。先放一篇作者的演讲既要,这个也是分析源码时候思路的参考和本文很多图片的来源。这篇文章中,也很好的说明了为什么要设计路由的原因以及所带来的好处。ARouter整体结构 首先来看下整个Arouter的大致代码结构。整个代码结构应该是分成

2017-03-26 15:39:54 12257

原创 浅谈Android模块化设计(常规思路)

移动开发从iPhone手机问世之后,也快有十个年头了,随着App功能的不断的变多,代码规模越来越大,也为了适应多项目组协同开发的工程需要,各种移动端的模块化方案应运而生。这两年来,各大公司以及各路大神,都或多或少放出部分模块化的方案或者思路。这段时间,看了挺多方案,想通过一个系列的文章,总结下心得体会。这些体会还是建立对模块化有些了解的基础上的,可能也不是很适合初学者阅读。这里总结的大多是一些轻量级

2017-03-26 15:38:08 3622

原创 Android InputMethodManager 内存泄漏解决方案

之前使用LeakCanary工具定位内存问题时候,发现系统输入法的内存泄漏,网上也有挺多解决方案。

2016-09-23 20:52:48 3707 2

原创 Android插件化框架使用心得 (细节篇)

在尝试 DroidPlugin 插件化的过程中,会遇到一些挺细节的问题,最终大部分情况还是通过阅读框架代码或者源码解决,个人觉得这个也是一个比较好的学习过程,所以将一些细节问题纪录一下。

2016-09-23 20:38:33 546

原创 Android插件化框架使用心得(原理篇)

工作原理android 系统运行的基础是基于四大组件,那么插件化框架工作过程也离不开四大组件相关的流程(生命周期等),而 DroidPlugin 是一种非侵入式的设计方案,即插件程序,可以完全按照正常的app开发方式,和宿主间几乎无耦合,同时,宿主启动apk的过程,完全按照android原生api的调用方式,进行启动。以Activity为例,简要描述下在安装插件app的情况下,启动一个插件中Acti

2016-09-11 14:19:04 759

原创 Android插件化框架使用心得 (使用篇)

最近项目中,有些子功能需要按需加载,于是考虑使用插件化方案实现,看过几个插件化方案后,最终选择了360之前开源的DroidPlugin方案。在使用中,还是有一些心得体会,网上的源码分析,详细原理分析的文章一经很多(文末会有链接),本篇文章,主要从使用的角度入手,简单描述下DroidPlugin原理,也记录下使用中心得体会。基本原理阅读了部分DroidPlugin的源码,也看了部分网上的文章和andr

2016-09-11 14:17:52 3806

原创 Tips:使用retrolambda 是出错 failed for task ':app:compileDebugJavaWithJavac'

最近在研究RxJava 相关内容,有些别人的项目中,使用了lambda表达式,使用了Retrolambda这个开源库。 然而在使用过程中,发现出现了如下的报错Execution failed for task ':app:compileDebugJavaWithJavac'

2016-07-04 09:43:41 1406

翻译 (翻译)Android应用生成测试覆盖率报告

对于使用AndroidJUnit4 runner创建的Android集成测试用例,之前一直都没有发现,一种合适的产生代码覆盖率的方式。我曾经尝试过很多方式,但是要不就是不奏效,要不就是只合适我现在已经不再使用的Robolectric测试框架,其他开发者,也渐渐不再新项目中使用这个测试框架了。

2016-06-29 21:28:24 1895 1

原创 Android 代码覆盖率工具使用

前言Android 开发统计代码覆盖率,在之前的老版本中,需要借助第三方工具,在现在的新版本中,只要使用JaCoCo插件,就可以完成简单覆盖率测试。与 Espresso 框架结合,进行覆盖率测试Android SDK 现在已经内置了对 Emma Test Coverage框架的支持,可以在官方文档中进行查阅。 具体由 JaCoCo 工具进行覆盖率相关内容。

2016-06-29 21:20:53 2966 2

原创 Android Espresso 测试框架探究

1 简介Espresso 是谷歌官方实现的一个测试框架,根据官方文档,该框架主要能实现如下的功能。 查找一个view是否显示 在一个view上触发一个动作 查询一个view中是否符合一个断言 使用 onView 方法进行一般测试 使用 onData 进行 AdapterView 相关的测试(ListView, GridView,……) 使用 onData 方法进行一般测试 调试Espr

2016-05-30 19:33:52 8121 1

原创 Android Robolectric 测试框架探究

由于工作工作需要,对Android的测试框架做了个初步的研究,这里记录下,也会记录若干参考资料和例子,方便自己以后回顾。本文主要记录了Robolectric框架的探究过程。1 简介通过实现一套JVM能运行的Android代码,然后在unit test运行的时候去截取android相关的代码调用,然后转到他们的他们实现的代码去执行这个调用的过程。举个例子说明一下,比如android里面有个类叫Text

2016-03-30 23:17:43 3395 1

原创 Android 反射技术

简单的记录下Android 中和反射相关的一些心得。

2016-03-30 19:27:23 775

java 简易的socket

一个简单的的用java 的socket 的例子。解压缩就可以用

2013-04-24

空空如也

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

TA关注的人

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