在第一次使用findbugs时检查出100多个Bad pratice,仔细一看原来全是R文件里面的类名首字母没有大写导致的。 于是只有自己在findbugs设置界面中添加过滤条件来忽略掉R文件。 在File-Settings-Other Settings-FindBugs IDEA的Filter中, Read More
在线导入butterknife的jar包 在Android-app-Open Module Settings下选中module下的app 选择Dependencies,点击右边的“+”,选择第一个:1. Library dependency 在弹出来的搜索框中输入butterknife进行搜索,选择 Read More
在使用Appium自带的Inspector来查找元素定位时,一段时间(60s)不对其进行任何操作appium就会关闭Android应用,并打印出 info: [debug] We shut down because no new commands came in 的信息。 即appium启动一个应用 Read More
Activity的生命周期有7个函数,Fragment的生命周期有11个函数。 Activity生命周期除上述6个方法还有一个Restart()方法,该方法在该Activity从不可见(仍存在)到重新可见时调用。 测试代码如下: 运行程序: 切换到其他应用: 切换回本应用: 退出应用: 可以看出:各 Read More
出现该问题的原因是通常手动输入的字符串都是LPCSTR类型的, 解决办法如下: 在工程处右键,属性-常规-字符集,将Unicode字符集改为为多字节字符集,应用并确认即可。 字符串常量报错: 在常量报错时使用”_T”宏(若出现未定义标识符,则需增加头文件#include <tchar.h>),格式: Read More
实现效果如下图,鼠标左键按下下拉关机: 先说下实现思路和实现过程(包括失败过程),不想了解的可直接往下拉查看红色字体标注的最终实现方法。 首先实现下滑关机的Windows自带的一个功能(程序)SlideToShutDown.exe,位于C:\Windows\System32文件夹中, 双击执行即可实 Read More
2. 工厂方法模式 (1)概念 工厂方法模式的定义是:定义一个用于创建对象的接口,让子类决定实现哪一个类。 即工厂父类负责定义创建产品对象的公共接口,工厂子类负责生成具体的产品对象。 将产品类的实例化操作延迟到工厂子类中完成,即通过工厂子类来确定究竟应该实例化哪一个具体产品类。 工厂方法模式是简单工 Read More
1. 单例模式 (1)概念 单例模式的定义是:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 (2)类图、代码 单例模式的类图设计如下: 单例模式中的主动实例化(加载类时实例化单例类)[推荐使用]: 外部通过代码Singleton singleton = Singleton.get Read More
4. 接口隔离原则(ISP) (1)概念 接口隔离原则的定义是:建立单一的接口,不要建立庞大臃肿的接口,尽量细化接口,接口中的方法尽量少。 每个模块应该是单一的接口,提供给几个模块就应该有几个接口,而不是建立一个庞大臃肿的借口来容纳所有客户端访问。 与单一职责原则不同:比如一个接口的职责可能包含10 Read More
1. 单一职责原则(SRP) (1)概念 单一职责原则的定义是:应该有且只有一个原因引起类的改变,即一个类只负责一个职责。 比如让类C负责两个不同的职责:职责P1,P2。当由于职责P1需求发生改变而需要修改类C时,有可能会导致原本运行正常的职责P2功能发生故障。 (2)举例 关于用户管理的一个类按如 Read More