Rxjava的使用说明书
JAVA序列化危机 Apache Commons Collection 中的反序列化漏洞在 2016 年撼动了整个Java 生态系统,也影响到了 70 余个其他的 Java 库,甚至还让 PayPal 的服务器遭受影响。 OWASP组织将“不安全的反序列化”列为2017年10项最严重的Web 应用程序安全风险榜的第8位。 Android 反序列化漏洞 CVE-2014-7911 Andro
JAVA推荐使用枚举代替int 1 枚举提供了类型安全检测 2 枚举隔离了使用的类和枚举类型,使增加和重排无需重新编译 3 本质上是单元素枚举,final类型,不支持扩展(继承),但是可以自由使用接口和方法。 4 便于理解,维护 5 绝对安全的单例类型(相对于双重锁,无法被反序列化创造多个实例) Android 不建议使用枚举的原因 1 手机内存资源有限,ENUM将会增大最终的DEX
同步访问共享的可变数据 将可变数据限制在单个线程中 当多个线程共享可变数据,每个读或者写的线程都必须执行同步 如下例,去除同步锁则会造成死循环 private static boolean stopRequested; private static synchronized void requestStop() { stopRequested = true; } private
Android安全技术揭秘与防范——APK动态分析
主流序列化协议优缺点对比和开发必备网站
Netty线程模型 可根据需要配置线程模型:单线程Reactor、多线程Reactor、多层线程Reactor 无论几个线程,都通过单一的Acceptor接收客户端请求,可以创建更多的NioEventLoop来处理IO操作。 EventLoop和EventLoopGroup实际继承了Java的ScheduledExecutorService,使其具备了线程池的特性,其线程数量可动态配置。例如
超实用!打包、配置项目必备的Gradle实战技巧!
国外知名音频库一站式资料和简介
著名音频库多角度对比
追踪Activity源码实现,主要参考的源码为Android2.3与8.0,从姜饼到奥瑞奥,进行了简要的分析与总结;Activity的主要逻辑并没有根本性的改变,更多是做了一些封装和优化,下文会在版本变化中对相关变化的代码进行对比和说明。
1 点九生成阴影 优点 随意调整 效果立即可见,快速实现。 缺点 自带大小会压缩布局;如果布局内有图片,容易被图片覆盖阴影 https://inloop.github.io/shadow4android/ 2 shape生成阴影 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http:/
访问者模式 一句话 实现了访问者和被访问者分离,灵活且扩展性强;但违背了迪米特和依赖倒转原则,被访问元素若修改影响较大。 细节 双分派技术(双动态绑定) 访问者的角色由它的实现对象确定 被访问的角色也由它的具体对象决定 应用场景 源码:注解的解释器 员工给不同管理者查看的报表 病人、抓药人、医生、定价者面对药店不同药物所做的想法或操作 中介者模式 一句话 加入中介类来改变
类图 相关类介绍 BootClassLoader 调用流程 1、ZygoteInit的main方法 2、预加载常用类 3、读取预加载类名时获取BootClassLoader单例 4、调用classForName(C实现)获取结果 DexClassLoader 构造函数 public DexClassLoader (String dexPath, String dexOutpu
打包jar文件主模块build.gradle根路径task makeJar(type: org.gradle.api.tasks.bundling.Jar) { //指定生成的jar名称 baseName 'fixclass' //从哪里打包class文件 from('build/intermediates/classes/debug/cn/gowild/hotfixtest/')
超高速集成 public class SophixStubApplication extends SophixApplication { private final String TAG = "Sophix"; // 此处SophixEntry应指定真正的Application,并且保证RealApplicationStub类名不被混淆。 @Keep @Sop
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号