摘要: 线程池以及四种常见线程池 四种常见的线程池: Executors.newCachedThreadPool() Executors.newFixedThreadPool(int nThreads) Executors.newScheduledThreadPool(int nCorepoolSize) 阅读全文
posted @ 2018-11-27 17:30 帅不过王力宏 阅读(166) 评论(0) 推荐(0) 编辑
摘要: LRU least recently used 最近最多使用 实现原理为一个链表,新添加的排在链表头,如果链表中有使用过的元素,就提取到链表头,当需要删除元素的时候就从链表尾删除 阅读全文
posted @ 2018-11-27 17:29 帅不过王力宏 阅读(119) 评论(0) 推荐(0) 编辑
摘要: SurfaceView "链接一" 拥有一个独立的绘图表层,可以不需要在主线程中进行绘制。 ​ Activity窗口的顶层视图DecorView及其两个TextView控件的UI都是绘制在SurfaceFlinger服务中的同一个Layer上面的,而SurfaceView的UI是绘制在Surface 阅读全文
posted @ 2018-11-27 17:29 帅不过王力宏 阅读(93) 评论(0) 推荐(0) 编辑
摘要: TCP 、 UDP、三次握手、四次挥手 运输层为应用层提供端到端的的通信服务 UDP:无连接、不可靠的协议。DNS DHCP 都是使用的udp协议 TCP:TCP协议是面向连接的、可靠传输、有流量控制,拥塞控制,面向字节流传输等很多优点的协议。其最终功能和UDP一样,在端和端之间进行通信,但是和UD 阅读全文
posted @ 2018-11-27 17:29 帅不过王力宏 阅读(146) 评论(0) 推荐(0) 编辑
摘要: Java 线程内存模型 "链接一" 所有线程共享主内存,每个线程有自己的工作内存 产生线程安全的原因 :线程的working memory是cpu的寄存器和高速缓存的抽象描述:现在的计算机,cpu在计算的时候,并不总是从内存读取数据,它的数据读取顺序优先级 是: 寄存器-高速缓存-内存 。线程耗费的 阅读全文
posted @ 2018-11-27 17:28 帅不过王力宏 阅读(126) 评论(0) 推荐(0) 编辑
摘要: Java 对象的生命周期 "链接一" 类的创建阶段的详细流程 第一步:找到需要加载的类并把类的信息加载到jvm的方法区中。加载的方式有如下: 从class文件中读取 从jar文件中读取 从网络获取applet 根据一定的规则生成:比如动态代理模式,自动生成的代码 从非class文件中读取:道理和从c 阅读全文
posted @ 2018-11-27 17:27 帅不过王力宏 阅读(335) 评论(0) 推荐(0) 编辑
摘要: hashMap 与concurrentHashmap 转载自 https://javadoop.com/post/hashmap hashmap concurrentHashMap 阅读全文
posted @ 2018-11-27 17:25 帅不过王力宏 阅读(83) 评论(0) 推荐(0) 编辑
摘要: glide图片加载原理 参考 "链接一" 简介的简介 第一步:Glide.with(context) 在传入为fragment或者Activity的时候添加一个没有view的fragment来监控生命周期 第二步:load(url)生成RequestBuilder 第三步:into(ImageVie 阅读全文
posted @ 2018-11-27 17:24 帅不过王力宏 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 模块化实现的好处 代码结构更清晰 开发更解藕 阅读全文
posted @ 2018-11-27 17:23 帅不过王力宏 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 单链表成环 如何判断单链表成环,求环的长度(要求事件复杂度) 通过深度优先算法,在遍历过的节点上添加标记位 通过套圈的方式一个指针前进1 一个指针前进2,当两个指针第二次重叠的时候就可以检测出是否成环 阅读全文
posted @ 2018-11-27 17:23 帅不过王力宏 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 本地密钥的安全 1、将密钥分成不同的几段,有的存储在文件中、有的存储在代码中,最后将他们拼接起来,可以将整个操作写的很复杂,这因为还是在java层,逆向者只要花点时间,也很容易被逆向。 2、用ndk开发,将密钥放在so文件,加密解密操作都在so文件里,这从一定程度上提高了的安全性,挡住了一些逆向者, 阅读全文
posted @ 2018-11-27 17:22 帅不过王力宏 阅读(351) 评论(0) 推荐(0) 编辑
摘要: 面试题 自己遇到的问题 如何保证本地密钥的安全 "answer" 阿里巴巴 LRUCache原理 "答案" 图片加载原理 "答案" 模块化实现的好处,原因 "answer" JVM 视频加密传输 统计启动时长,标准 如何保持应用的稳定性 ThreadLocal原理 谈谈ClassLoader 动态布 阅读全文
posted @ 2018-11-27 17:19 帅不过王力宏 阅读(179) 评论(0) 推荐(0) 编辑
摘要: MacOS X 编译Android源码 本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 由于在工作中遇到了很多关于android内部实现的问题,虽然后面都解决了,有些是看了源码实现,有些源码看不了只能去google,百度。这就导致了对于很多的问题其实是知其然不知其所以然,所以从现 阅读全文
posted @ 2018-11-27 17:17 帅不过王力宏 阅读(1640) 评论(0) 推荐(0) 编辑
摘要: MacOS X APK 最新版本 反编译 文件准备 "dex2jar官网" (最新版本2.0 "Download" ) "apktool官网" (最新版本 "Download" ) "jd gui官网" (最新版本 "下载" ) 环境准备 apktool 1. "下载" 保存文件名为 apktool 阅读全文
posted @ 2018-11-27 17:17 帅不过王力宏 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 由于在使用vlc的过程中发现了关闭资源需要30s的bug,所以准备自己编译一个vlc的最新版本的库来。 环境准备 "官网wiki" ubuntu16+ 第一步:需要安装好ubuntu,作者是在mac上安装的ubuntu的虚拟机来进行编译的 编译环境 `sudo apt get install aut 阅读全文
posted @ 2018-11-27 17:16 帅不过王力宏 阅读(581) 评论(0) 推荐(0) 编辑
摘要: Device supports x86_64,but APK only supports armeabi 今天在创建虚拟机的时候发现这么一句话,于是我就开始思考,这话什么意思?为什么我在真机上没有看到过这样的意思。于是我就开始google之。现在将我的调查结果记录如下 "第一篇 记录so文件一些问题 阅读全文
posted @ 2018-11-27 17:16 帅不过王力宏 阅读(5485) 评论(0) 推荐(0) 编辑