https://developer.android.com/about/versions/oreo/android-8.0-changes Android 8.0 行为变更 每次在后台运行时,应用都会消耗一部分有限的设备…
分类:移动开发
二维码快速接入(xzing三方库)
【链接】https://www.jianshu.com/p/73e2a0eeaa44
解决运动单例造成Fragment状态被保留的问题
视图保存,finish后也不新构建: 其实Activiyt、Fragment都是重新构建了的。不过由于对BottomSelectView采取单例构建数据的方式。如果对构建数据做了null判断。第二次重新构建Activ…
Android内存优化之系统预制资源sPreloadedDrawables
private void clearPreloadedResources() { Resources resource = getApplicationContext().getResources(); try { Fi…
NDK开发——Linux命令、Shell命令、MakeFile命令、gba命令
Linux命令 一、清空命令行 reset 二、文件操作 ls -l 显示文件列表 ls -la 显示所有文件列表 ls -l ja* 显示经过通配符查找的结果 touch today.c 创建文件 cp src.txt…
Linux工具命令之crontab
前言 在平时工作中,我们经常需要执行一些定时任务。 比如我的电脑每天晚上都会在凌晨1点开始sync代码,并执行编译。4点又会sync另一份代码。执行另一个编译任务。这无疑会提高我们白天的工作效率,因为每天到公司都不再需要…
Gson 解析复杂数据
本文主要关注所解析的 JSON 对象与已定义的 java 对象结构不匹配的情况,解决方案就是使用 JsonDeserializer 来自定义从 JSON 对象到 Java 对象的映射。 一个简单的例子 有如下 JSON …
设计模式(9)工厂模式(讲解+应用)
目录 工厂模式 为什么使用工厂模式 应用实例 工厂模式 工厂模式:是一种常用的对象创建型设计模式,此模式的核心精神是封装类中不变的部分,提取其中个性化善变的部分为独立类,通过依赖注入以达到解耦、复用和方便后期维护拓展的目…
五分钟了解continue,break, return 的区别
概述: continue,break, return 来跳出或结束循环。那么这三个具体有什么区别呢?什么时候该用什么呢? 区别 break : 跳出当前循环体,继续执行后面的代码。比如跳出当前 for 循环。 注意:br…
okhttp之CallServerInterceptor 分析
CallServerInterceptor是okhttp中的最后一个拦截器,用来向服务器发送客户端的请求数据,并且封装服务器返回来的Response。开始分析代码: @Override public Response i…
ALog:Android开发日志管理库
Description 这是一个Android开发日志管理库,在项目中,能够通过Logcat输出日志信息,同时记录Exception和Crash日志到指定的目录文件夹下面。 日志记录规则是按照日期生成的txt文件。每日生…
kotlin中的lambda表达式知识整理
如何定义lambda表达式(将表达式赋值给一个常量或变量): 如果有小括号 如果需要参数(没有参数可以写()),就在小括号里写明参数类型,参数名可以省略,然后小括号后面加上->{}, ->后面如果没有返回值就…