值传递:在方法被调用时,实参通过形参把它的内容副本传入方法内部,此时形参接收到的内容是实参值的一个拷贝,因此在方法内对形参的任何操作,都仅仅是对这个副本的操作,不影响原始值的内容。 引用传递:”引用”也就是指向真实内容的地址值,在方法调用时,实参的地址通过方法调用被传递给相应的形参,在方法体内,形 ...
Android 缓存笔记
内存缓存long maxMemory = Runtime.getRuntime().maxMemory();//kb单位int cacheSize = (int) (maxMemory / 8);LruCache lruCache = new LruCache<String, Bitmap ...
Android 5.x中 UsbDevice mInterfaces为空的解决方法
前提最近做的项目在android5.0的系统的开发板连多个usb设备,偶尔会出现设备无反应的情况,通过调试发现UsbDevice的mInterfaces会离奇出现空的情况,刷回4.4则没这个情况出现,我感觉应该是系统api的问题,于是上网搜索,发现android framework之旅(六)Usb ...
几种常用的设计模式的笔记
面向对象的六大原则基础 接口和抽象类区别抽象类是可以表示一种东西的根源,是可以有成员属性和动作的。而接口则仅仅表示动作。 单一职责原则 SRP每个类都应该有一个单一的功能,并且该功能应该由这个类完全封装起来。所有它的(这个类的)服务都应该严密的和该功能平行(功能平行,意味着没有依赖)。——维基百科 ...
Android传统蓝牙与低功耗蓝牙
区别低功耗蓝牙又叫ble蓝牙,本文会用ble代替低功耗蓝牙(偷懒) 通用配置要申请的权限注意:android6.0以上还需要申请运行时权限<uses-permission android:name="android.permission.BLUETOOTH"/><uses-per ...
ConstraintLayout和FlexboxLayout
ConstraintLayout一些说明有人可能好奇 android 定位 除了 left right top bottom 外还有 start end而 start end 和 left right 在布局里看感觉一模一样,其实是有一些区别的,引入start end 就是为了适配google的R ...
Android的AOP编程
参考资料 https://blog.csdn.net/nthack5730/article/details/45604031 理论可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者 ...