首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
AndroidHint
掘友等级
Android开发
正在输入...
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
88
文章 88
沸点 0
赞
88
返回
|
搜索文章
最新
热门
【源码解析】AsyncTask的用法与规则
AsyncTask,相信大家已经很熟悉了。它的内部封装了Thread和Handler,这让我们可以将一些耗时操作放到AsyncTask,并且能将结果及时更新到UI上。AsyncTask主要用于短时间耗时操作,长时间耗时操作不建议使用AsyncTask。下面通过Google官方的…
Mac系统下Android Studio快捷键总结
11、全局查找方法的引用:ctrl+option+h,这对查看源码中的方法引用特别有用。
换肤方案
两套主题的切换(比如白天/黑夜),使用一个开关按钮进行切换。 多套主题在线下载并更新。 第一种的实现基本上使用设置本地Theme来操作,即将所有的资源打包到APP中,并且根据主题进行切换。 第二种不可能使用第一种的实现方式,因为将所有资源都打包到APP中缺乏灵活性,不利于活动的…
Android插件化原理
这篇文章来讲一下Android插件化的原理和大概的一个运行流程,最后将一个demo呈现出来。 插件说到底就是一个apk文件,我们要做的事情是从宿主中加载该apk文件的类对象(比如启动Activity)和使用该apk文件的资源等操作。我们知道系统是不会安装apk插件的,所以宿主是…
Android换肤机制
通过源码可以得知,第二、第三、第四种方式其实就是第一种方式的封装,最终获取View实例的是通过inflater实例的inflate()方法。 可以看到同样也是使用了inflater的inflate()方法。所以我们可以得到这样的结论: 无论是我们自己主动调用inflater的i…
ClassLoader问题汇总
从源码中可以看到,Android中有三个ClassLoader,分别是BaseDexClassLoader、PathClassLoader、DexClassLoader。 从上图可以看出,ClassLoader的直接子类是BaseDexClassLoader、SecureCla…
Dex的加载过程
Android有两个主要的classloader,分别是PathClassLoader、DexClassLoader。它们都继承自于BaseDexClassLoader。PathClassLoader主要是用来加载系统类和主Dex中的类,而DexClassLoader主要是用来…
进程间的通信——AIDL的使用
本篇文章主要是讲述AIDL是如何使用的,而不会太具体地介绍一些代码上面的细节。具体的代码细节可以参考IPC机制之Binder机制这篇文章。我们设定一个情景,客户端向服务端添加书籍并获取当前书籍列表的信息,我们来看一下应该怎么实现。 使用AIDL,也就是在Binder的基础上面进…
AIDL的作用与调用过程
AIDL是Android Interface Definition Language,意思就是Android接口定义语言。首先它是一种语言,它被设计出来的目的就是为了实现进程间的通信。 通过使用AIDL,可以帮我们生成进程间通信时需要用到的类和接口方法。 当然,我们也可以不借助…
AIDL中的in、out、inout的区别
定向tag是AIDL中语法的一部分,其中in、out、inout是三个定向tag。 意思就是所有非基本类型的参数都需要一个定向tag来表明数据是如何走向的,要不是in,out或者inout。基本数据类型默认是in,而且不能是其他tag。 定向 tag 表示了在跨进程通信中数据的…
下一页
个人成就
文章被点赞
402
文章被阅读
156,534
掘力值
3,232
关注了
6
关注者
80
收藏集
13
关注标签
9
加入于
2019-09-02