- 博客(17)
- 收藏
- 关注
原创 Android 13 AIDL服务编写
Android 11开始已经废除了HIDL转而使用AIDL,以Android 13为例,写一个最简单的AIDL及C++服务
2023-07-10 15:11:47
3995
9
原创 Android Studio导入新的常量
Android Studio导入新的常量问题描述本次问题是想要写一个录音工具,实现6通道的录音,进行AudioRecord的通道数设置的时候,设置了一个CHANNEL_IN_6(这个是Android源码中存在的),但是这里由于原生的AudioFormat.class中不存在该定义,因此编译不通过解决方法既然Android源码中存在该定义,我只需要搞定Android源码中的环境,然后用Android源码编译出来的AudioFormat.class替换这里的文件或者绕过检查即可。修改Android代
2022-04-21 18:54:43
1733
原创 去掉Android中的耳机音量调节到最大时候的音量检查
问题背景:Android R Automotive版本开发车机过程中,想要实现多通路音频输出,正常选择了一个通路对应speaker这个output device,另外一个通路选择了wired headset作为output device,此时遇到一个问题,Android的机制有一个音量检查的问题,耳机在这里不符合这个检查,因此配置耳机通路的这一路在调节音量的时候不能调节到最大音量,正常在手机上会弹出一个窗口让用户手动选择,但是Automotive版本这个弹窗被关闭了,解决该问题需要做如下修改:// ./
2022-03-10 22:38:54
4955
原创 Android 11音频服务创建以及播放的流程
这篇文章描述了音频服务的启动流程;启动之后应用播放音频的时候数据流程,从应用层到HAL层的相关内容
2022-01-20 10:44:45
8745
原创 基于紫光展锐平台的音频调用到hal层逻辑
基于紫光展锐平台的音频调用到hal层逻辑1、数据流程图AudioPolicyService和AudioFlinger的创建:这两个服务都在audioserver中启动,文件路径:frameworks/av/media/audioserver/main_audioserver.cpp从AudioFlinger和AudioPolicyService的创建,到output的打开,以及AudioFlinger开始往底层写入数据的具体流程如下图:#mermaid-svg-kjHL4XWwkQXN6NdA
2021-12-28 18:44:39
1128
原创 swapfile修改Ubuntu虚拟机的交换内存
修改交换分区大小背景编译Android源代码的时候由于需要较大的内存空间,此时如果内存空间不足的时候容易出错被回收掉,一种方式可以直接修改虚拟机的内存大小,一般至少12G以上,如果物理内存不够的时候只能通过交换分区处理了。处理方法:查看交换分区大小swapon -s如果查看的时候有内容显式表示当前是处于启用状态,如果什么内容都没有则是未启用调整大小如果当前swapfile是启用状态则需要先使用swapoff关闭交换分区,再进行大小的调整sudo swapoff /swapfil
2021-08-17 16:17:20
1473
原创 Vmware宿主机内存回收
VMware 虚拟机使用之后硬盘空间只会增大不缩小问题的解决问题背景我使用的是ubuntu20.04的虚拟机,由于要编译Android的AOSP代码,所以使用内存比较大,但是换一个平台定制的Android源码之后我删除了原先的Android源码库在虚拟机中gparted能看到空间被释放了,但是宿主机Windows10上面的磁盘空间显式依然是满的,此时如果要换另一个源码进行编译会显式空间不足,解决方法如下:解决方式将虚拟机中的空间写0.出现这个问题的原因就是我虽然删除了空间但是这些空间并不是实际的在
2021-08-16 12:21:24
1151
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人