- 博客(4)
- 收藏
- 关注
原创 Android Media Player AHandler AMessage ALooper消息机制
当我们想要我们的程序执行一些事情的时候要么同步,要么异步,而消息机制便是一种异步的方式,首先创建一个消息队列,这个消息队列在一个单独的线程中轮询,一旦有人发送消息给它,它就会将消息取出执行,执行后又回到等待状态直到有新的消息到来普通消息被Post到消息队列,Looper不断的从队列中取出消息并分发给相应的Handler处理。如果是需答复消息的话使用PostAndAwaitResponse,Handler处理完以后通过postReply将消息返回给发送方,发送方通过新建的responsemsg接收。
2024-06-03 16:23:47 913
原创 Ubuntu使用Emulator方法
即可解决“emulator: ERROR: x86 emulation currently requires hardware acceleration!Ubuntu用Android的Emulator都需要在开机时输入命令将模拟器标记为自己的设备才能启动,运行:emulator -verbose -cores 4 -show-kernel。所以每次开机输入命令。
2024-03-04 09:57:18 545
原创 8155 Android R编译中出现的API问题解决
在Android 11之前,在进行Framework层进行系统定制和开发时,只要代码不出现明显的语法错误,基本都能正常编译。但是在Android 11以后,对于系统层的代码有了更严格的Lint检查,及时代码没有明显的语法错误,也会因为不规范和不够严谨等问题,在执行update-api的时候报错。Android lint是一个静态代码分析工具,它会对我们的代码进行扫描和检查,提前发现问题,通过lint tool工具输出一个文件,告诉我们哪行代码有问题。
2024-02-04 14:53:57 1457
原创 QCM 8155 Android R的编译
Soong是由Go语言写的一个项目,从Android 7.0开始,在prebuilts/go/目录下新增了Go语言所需的运行环境,Soong在编译时使用,解析Android.bp,将之转化为Ninja文件,完成Android的选择编译,解析配置工作等。随着Android版本的更迭,尤其是Androd10和Android11以上源码的编译,单编模块的时间也特别慢,每次都需要小半个小时甚至更长,因为每次单编都会重新加载所有mk文件,再生成ninja编译,此过程很慢,实际编译过程很快。具体做了什么事情呢?
2023-12-28 15:45:53 1515
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人