自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

wangadping的博客

保持学习,保持热情,乐观积极

  • 博客(103)
  • 收藏
  • 关注

原创 Android Studio常见问题

Run一直是上次的apk内存占用太大,导致闪退

2023-11-20 22:38:06 297

原创 自定义歌曲试听SeekBar

自定义歌曲试听进度条

2023-11-20 15:46:52 143

原创 ANR问题分析的一般套路

android anr分析

2023-11-20 00:14:23 364

原创 分析日志的一般套路

‍‍‍‍分析日志的一般套路

2023-11-20 00:03:31 292

原创 Map面试常见问题

在JDK1.8之前,HashMap内部采用数组+链表的结构来存储数据,数组是HashMap的主结构,而链表则是用来处理冲突的。如果有元素,则将该元素与索引位置处的元素形成链表,并比较两个元素的key值,如果key值相同,则将value值较大的元素放在链表的头,这样就可以保证每次遍历都能按照key值排序。如果数组的大小选择过小,会导致频繁的扩容操作,影响程序的性能;HashMap的实现使用了散列(hashing)技术,通过将键转化为数组的索引,可以在O(1)的平均时间复杂度内完成数据的插入、查找和删除操作。

2023-09-14 19:44:07 240 1

原创 List常见面试问题

ArrayList的扩容方法是grow(),它会获取到ArrayList中elementData数组的内存空间长度,然后扩容至原来的1.5倍。其中,ArrayList是基于数组实现的,LinkedList是基于链表实现的,Vector是基于数组实现的线程安全版本。Java中的List是一种存放有序的、可以重复的数据的集合,它允许重复元素的存在。List中的元素都有对应的一个序列号(索引)记录着元素的位置,因此可以通过这个序列号来访问元素。ArrayList不是线程安全的。

2023-09-06 11:17:07 549

原创 音量压低处理流程

我们在源码中进行全局搜索,应该是在/frameworks/base/services/core/java/com/android/server/audio/PlaybackActivityMonitor.java,我们接着看这个类。通过申请临时DUCK焦点可以压低其他在播放的音源,如源码中的注释,不会暂停其他在播放的音源,而是降低输出,在车载情景下,一般在地图导航或者语音播报的情景下会申请这个焦点。下面流程基于aosp9。

2023-08-02 20:30:29 314

原创 AudioFocus申请失败情形

最近在分析问题时,经常看到媒体应用出现申请音频焦点失败,导致状态异常的问题,因此总结一下出现该问题的一些情景。原生设计中,**通话中或者来电时,**申请音频焦点失败,需要关注下。下面是原生系统源码,逻辑比较简单。

2023-07-31 17:21:04 364

原创 注册外部的AudioPolicy,监听焦点变化

因此我们试一试可不可以利用这一点,来注册外部的AudioPolicy,进行焦点变化监听。幸运的是可以,并且AudioManager中提供了。在上面分发流程分析中,最终是在MediaFocusControl中进行处理的,在。​方法中可以看到在执行焦点栈逻辑时会先执行AudioPolicy相关逻辑,可以通过反射来实现。

2023-07-26 16:51:30 195

原创 AudioFocus分发流程

在音视频app开发中一般会遵循音频焦点的机制,播放时申请音频焦点,丢失焦点后暂停播放,恢复焦点后继续播放等。尤其在车载开发时,涉及到三方应用和自研应用,导致经常出现音频焦点混乱混音等问题。整体是一个IPC调用流程,MediaFocusControl中维护了一个焦点栈,当栈数据发生变化时,会分发焦点状态给调用客户端。

2023-07-17 15:56:14 95

原创 Android开发常见模拟器

Android常见模拟器

2023-07-10 11:05:54 308

原创 如何查看声卡、pcm设备以及tinyplay、tinymix、tinycap的使用

只有PCM设备才有这部分,只有c和p两种。c代表capture,说明这是一个提供录音的设备,p代表palyback,说明这是一个提供播放的设备。设备的id,代表这个设备是声卡上的第几个设备。设备的ID只和驱动中配置的DAI link的次序有关。如果驱动没有改变,那么这些ID就是固定的。设备类型,通常只有comtrol/pcm这2种。从上图可以看到声卡会管理很多设备,PCM设备只是其中的一种设备。声卡的id,代表第几块声卡。通常都是0,代表第一块声卡。手机上通常都只有一块声卡。

2023-04-26 19:00:36 2646

原创 自己上传开源库到Maven

创建密钥,使用命令行操作示例,如下:(用gui操作默认密钥类型不是RSA and RSA,上传到服务器也有问题)提一个JIRA单,可以参考。密钥有分为私有密钥和公开密钥,配置gradle脚本。

2023-04-23 14:45:38 399

原创 c语言库api文档

Linux系统api文档:https://man7.org/linux/man-pages/dir_all_alphabetic.html。C语言标准库文档:https://swordair.com/docs/c-language-standard-library/

2023-04-17 01:48:29 432

原创 git-first-commit编译分析

git-v0.99版本,与现在的git比较接近,也是可以在ubuntu14上编译。编译环境:Ubuntu-14.0。修改Makefile。

2023-04-17 01:44:58 62

原创 Android串口工具

android串口工具

2023-03-08 23:07:21 897 2

原创 android查看签名信息

android签名信息

2023-02-21 23:12:51 443

原创 TME全民K歌TV Android

面试

2023-02-20 12:05:51 171

原创 星河智联Android开发

面试

2023-02-20 12:05:41 602 4

原创 Android列表条目左滑删除

Android 左滑删除

2023-01-30 19:29:30 601

原创 RecyclerView自定义滚动条

android recyclerview 滚动条

2023-01-29 17:19:03 832

原创 ExoPlayer修改播放器UI

exoplayer修改播放器

2023-01-11 10:38:48 610 2

原创 Design assumption violated异常处理

Design assumption violated异常处理

2023-01-04 12:26:59 950

原创 ServiceManager(Java层)源码分析

binder源码解析

2023-01-04 00:22:16 446

原创 杀进程系统重启服务引发的惨案

Android问题记录

2022-12-21 23:58:13 111

原创 开机向导禁用失败

android开机向导禁用失败

2022-12-19 22:30:03 186

原创 ServiceManager(Native)启动分析

ServiceManager启动分析

2022-12-14 00:40:08 514

原创 Binder驱动与协议

Binder驱动源码

2022-12-12 00:19:52 227

原创 Android序列化之Parcel源码分析(2)

Android parcel读写源码分析

2022-12-11 15:08:19 953

原创 Android序列化之Parcel概述(1)

android序列化

2022-12-04 15:41:19 177

原创 ContentResolver.query流程分析

ContentProvider查询流程

2022-12-02 00:10:00 1282

原创 ContentProvider启动流程分析

ContentProvider启动流程

2022-11-30 23:28:27 530

原创 自定义ContentProvider示例

自定义contentProvider

2022-11-28 00:16:19 244

原创 ArrayList源码分析

arraylist

2022-11-13 22:53:47 97

原创 Android系统启动流程

android启动流程

2022-11-08 00:03:57 4194

原创 iot智能家居常见协议和流程

iot,智能家居

2022-10-24 23:21:42 2169

原创 adb按时间抓取日志

logcat

2022-09-29 00:12:51 992

原创 定制开机向导注意事项

开机向导定制

2022-09-26 23:50:33 442

原创 app启动流程

APP启动流程分析

2022-09-25 19:52:56 1321

原创 使用python批量替换系统apk

python,adb

2022-09-25 10:00:16 592

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除