首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
android
订阅
慧鱼
更多收藏集
微信扫码分享
微信
新浪微博
QQ
9篇文章 · 0订阅
换肤方案
两套主题的切换(比如白天/黑夜),使用一个开关按钮进行切换。 多套主题在线下载并更新。 第一种的实现基本上使用设置本地Theme来操作,即将所有的资源打包到APP中,并且根据主题进行切换。 第二种不可能使用第一种的实现方式,因为将所有资源都打包到APP中缺乏灵活性,不利于活动的…
Android 类加载机制及热修复原理
bug一般是一个或多个class出现了问题,在一个理想的状态下,我们只需将修复好的这些个class更新到用户手机上的app中就可以修复这些bug了。要怎么才能动态更新这些class呢?其实,不管是哪种热修复方案,肯定是如下几个步骤: 这里的某种方式,对本篇而言,就是使用Andr…
Binder | 内存拷贝的本质和变迁
说起Binder的内存拷贝,相信大多数人都听过“一次拷贝”:相较于传统IPC的两次拷贝,Binder在数据传输时显得效率更高。 其实不少人在面试时都能回答出上面这句话,但若是追问他更多细节,估计又哑口无言了。 其实内存拷贝的概念既简单又复杂。简单是因为它功能单一,而复杂则在于不…
你了解JVM中的 JIT 即时编译及优化技术吗?
当虚拟机发现某个方法或代码块的运行特别频繁时,就会把这些代码认定为“热点代码”。 一个方法被调用得多了,方法体内代码执行的次数自然就多,成为“热点代码”是理所当然的。 一个方法只被调用过一次或少量的几次,但是方法体内部存在循环次数较多的循环体,这样循环体的代码也被重复执行多次,…
Android IntentService详解(源码分析)
1. 前言 本文是对 IntentService 的深入学习,包含其基本使用方法、IntentService更新处理UI工作,以及对 IntentService 的源码分析。 用户通过调用 Context.StartService(Intent) 发送请求,服务根据请求启动,使…
【源码解析】ThreadLocal的工作原理
在 Android 中用到数据库时,就一定会和 SQLiteDatabase 打交道,我们经常会为 SQLiteDatabase 创建一个管理类。例如下面就是一个 SQLiteDatabase 操作的管理类。 上面的示例代码,在 DataBaseManager 管理类中有两个静…
Android Fragment 使用解析
1. 基本概念 Fragment,简称碎片,是Android 3.0(API 11)提出的,为了兼容低版本,support-v4库中也开发了一套Fragment API,最低兼容Android 1.6。 过去support-v4库是一个jar包,24.2.0版本开始,将supp…
Android 进程保活
现在很多公司和开发者希望自己的app能够长期运行在手机内存中,因为只要该app的进程一直存在,那么我们就可以干很多事,尽管很多不是很光彩的事,比如偷流量,费电,偷偷安装应用和推送广告信息等等。庆幸的事,道高一尺魔高一丈,android原生系统对现在手机系统做了很多的保护,现在很…
Android目前流行三方数据库ORM分析及对比
Android 平台上的数据库框架非常多,但是有一个共同特点就是基于对象关系映射(ORM)模型的。实现的目标也都是不需要写SQL语句,通过对对象的操作保存和操作数据。要是从语法的简洁性来说都有自己的特点,总的来说不相上下,因此只能从数据的性能上来抉择了。 首先我们先看看目前最常用…