Lin Wait For Li

原本以为拥有全世界,醒来却发现只剩下自己

功能性UI测试

Android框架内支持运行的Instrumentation测试。测试库中包含Espresso,用于运行功能UI测试的框架。下面通过简单小例子来介绍一下如何全自动测试相关功能UI。 添加依赖首先在build.gradle添加部分代码apply plugin: 'com.android...


单元测试

最近时间比较多,去接触了一下测试这一块,有部分测试是开发人员必须兼备的能力,那就是单元测试。接下来简单介绍如何进行单元测试。 添加依赖包首先我们要早到androidstudio目录下的lib文件夹,copy junit-4.12.jar包到项目的libs文件夹下,然后右键Add As Libra..


google play发布App的流程

上周实习公司分配的新任务中有一个关于海外App的开发和发布,个人负责开发的MoneyApp 2.0版本需要在google play上发布,所以顺便做个记录以后方便大家参考使用。 注册google play developer首先你需要翻墙到注册一个google play developer账号,..


Win10系统搭配Android环境常见问题

最近去公司实习,公司配的电脑是Win10的系统,在安装androidstudio上出现百度没办法解决的问题。个人觉得程序员最苦逼最浪费时间的事情之一就是装环境了,这次我把自己经验写下来,希望以后可以用上。这里要提醒一下:Genymotion和VirtualBox有很多版本是冲突不行的,如果你想要..


SparseArray源码解析

最近笔试WPS的时候遇到SparseArray,需要手写Put和Get的方法,那时候并没有看过它的源代码,之前在看《Android源码设计模式》中也看到SparseArray的介绍,说如果Key的值是整形,用SparseArray比HashMap要高效很多,竟然吃亏过了就不能再吃亏了,今天自己手..


状态模式之微波炉

今天因为工作室组长去面试了CVTE,然后被问了设计微波炉功能。现在想向大家展示自己的思路。 题目要求设计微波炉功能,带皮不能加热,加热时不能打开,要求可扩展性。 分析问题寻找具有状态的本身实体对象,这里就有两种:1、微波炉。2、食物。所以就将微波炉和食物设计成一个接口,里面的方法都是该对象所具备..


浅谈MVP模式

MVP模式三部分 model(处理业务逻辑) view(更新UI界面) presenter(连接view与model之间的角色)其中三者关系如下图所示:用户仅仅接触到的只是View,而不再是Controller模块。这样当逻辑处理业务过多的时候就不会增加界面类的代码,UI仅仅只做UI更新操作,大..


策略模式小例子

今天复习了Android源码设计模式的策略模式,突然想自己写个例子加深自己往后的印象,下面的例子我借助复仇者联盟角色里面形象表达策略模式思想,如有错漏请原谅我的疏忽。 创建共同属性接口(Hero接口) 创建该接口是因为复仇者联盟里每个英雄虽有不同技能(方法中的具体表达),但是技能归结起来都属于动..