自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(279)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

转载 视频逐帧播放查看神器-android闪黑闪白等分析辅助工具

这类问题要分析的话就不得不需要对设备录屏,然后对录屏进行逐帧播放查看现象,看看到底是怎么回事,比如闪黑,闪白看肯定就是中间有一帧黑了,或者白了,导致前后帧的视觉差异太大,但是这个又是一瞬间的现象,导致给人就是闪黑,闪白现象。所以就不得不先拿录制的视频来进行分析,分析就需要对视频进行逐帧进行播放,那么下面马哥就给大家推荐几个工作中可以逐帧播放的视频播放器。这个是个完全命令行的播放器,不可以鼠标操作,具体逐帧播放其实是有按键可以控制的,这个按键就是“s”这个按键。点击 “工具”进入“自定义界面”

2024-09-04 09:29:17 218

转载 framework直播学习笔记--安卓如何实现Launcher启动应用全部变自由窗口Freeform模式

看一下堆栈是不是很清晰整个startActivity的过程,清楚知道在哪里启动的onClick且一步步到对应的startActivity,这里寻找最贴近context的startActivity,那就是。看到确实是可以启动Freeform模式的App,不过好像窗口的坐标不是我们设置的,一直显示在左上角,而且状态栏还遮盖了,导致无法拖拉自由窗口,那么到底啥原因导致该问题呢?硬看代码,这里就需要自己先了解launcher的app图标代码,去寻找app的图标点击onClick方法,一步步寻找。

2024-09-04 09:27:19 223

转载 安卓开机启动性能优化之-bootchart相关工具使用及查看

开机启动相关的详细信息,一般都是可以通过logcat中查看boot_progress相关查看,这种方式查看相对不那么方便,毕竟开机过程中涉及的进程较多,要查看也较多,而且还经常需要查看代码才可以对应起来,但有另一种方式可以通过看bootchart方式更加直观。最重要就是把pybootchartgui直接变成~/demos/bootchart/pybootchartgui.py。打包好成了 bcl.tar.gz文件,再进行导出用bootchart.jar进行解析生成图片。

2024-09-04 09:23:07 151

转载 音视频开发必备神器--yuv和rgb原始数据文件查看开源软件YUView使用和编译

这里主要讲解一下ubunutu系统上的编译和安装,其他系统windows,mac直接有编译好的,所以也就不介绍,自行下载安装使用既可以,不过程序员最看重源码,有了源码自己编译的软件,使用起来还可以观摩观摩github上大神的开源作品。经常做音视频相关的开发都知道,经常需要查看yuv文件,rgb这类原始图片数据文件,所以非常需要一个好用的软件,而且支持ubuntu等linux系统的,这里极力推荐YUView这个开源的软件,有源码可以自己进行编译使用。直接build目录进行make既可以。

2024-09-03 09:43:18 258

转载 安卓Framework wms/ams实战作业布置-千里马学框架

2、如果当前应用在后台(注意一定要在后台,不能在前台),使用adb shell 命令进行kill进程发现只有应用的WindowState在结构树被移除,其他的ActivityRecord,Task就没有被移除。哈哈,确实平时没注意这个现象,看到他描述的这个结果有点意外,主要不影响上面运行,属于安卓自己设计机制,所以与我们想象的一旦进程都被杀了,那么层级结构树肯定不可以残留相关的Task和ActivityRecord。2、进程前台移除和进程后台移除有啥区别,同样通过堆栈展示差别。

2024-09-03 09:38:55 99

转载 手把手教你做投屏AAC的详细介绍-千里马带你学framework

AAC(Advanced Audio Coding)是一种现代的音频编码技术,用于数字音频的传输和存储领域。AAC是MPEG-2和MPEG-4标准中的一部分,可提供更高质量的音频数据。AAC被认为是MP3的继任者。AAC比MP3的压缩率更高,压缩后的文件越小,二是保真性比MP3强。ACC最开始是基于MPEG-2的音频编码技术,MPEG-4标准出现后,AAC重新集成了其特性,加入了SBR技术和PS技术。特点:更好的声音质量和更低的压缩比,减少了由于压缩而引入的失真和噪音。

2024-09-03 09:36:21 173

转载 投屏开发音视频基础知识--h264相关介绍部分

SPS(Sequence Paramater Set)又称作序列参数集。对应的是针对一段连续编码视频序列的参数。包含 帧数、POC的约束、参考帧数目、解码图像尺寸和帧场编码模式选择标识等信息。PPS(Picture Parameter Set)又称作图像参数集。对应的是一个序列中某一副图像或者某几幅图像的参数。包含 熵编码模式选择标识、片组数目、初始量化参数和去方块滤波系数调整标识等信息。SPS、PPS的内容都是编码器写入的。

2024-09-03 09:33:13 182

转载 android12/13/14上支持新加入Hidl的hal方法-No more HIDL interfaces can be added to Android. Please use AIDL

但是很多学员提出,公司和方案上就是要求做hidl,很多时候不是自己可以随意决定,所以那是否高版本就真的不可以进行hidl的开发么?如果这样为啥系统自带了很多hidl是怎么可以通过编译校验的呢?明显看到 "android.hardware.audio@7.1"也是这样添加的,所以我们也可以把自己hidl这样添加一下。但是这样可能会让系统整个版本任何人都可以添加hidl,这样确实不太合理波及范围太大。上面是不是就看到了白名单,把android自带的一些hidl都是放入白名单。这样保存好既可以编译通过了。

2024-09-03 09:30:09 276

转载 重大消息:手机车机互联投屏专题发布-千里马带你学框架

android投屏的使用场景以前在新能源车机还没火爆时候,大部分停留在手机小屏幕投屏到大屏幕的情况及整个多端设备的互动,整体需求和技术发展其实也就是比较有限,但是新能源车机火爆后,那么这种手机和车机互联互动的需求出现了爆发性增长,车机上各种创新类的交互都和这个手机车机之间的投屏有关系,因为手机的app生态和更新换代肯定比车机频繁,这样做好了手机车机互动投屏,可以让车机复用手机的强大功能。手机–>车机 --复用丰富的手机生态,和手机互动互联,弥补车机生态不足短板。预计60-70课时,每个课时平均半小时。

2024-07-24 15:34:39 52

转载 android手机电视相框项目-学员做出个bug版本邀请大家review提意见

这个项目我说过不给提供答案哈,让各位学员朋友自己独立思考完成哈,因为尽量想让大家慢慢的要脱离每次可以参考马哥课程作业的习惯,这样才可以在以后framework工作中独立自主完成。上面就我们学员的成果和代码,让其他学员可以参考评估,在这基础上做出更好的相框手机和电视。明显在分屏情况等情况下会有画面显示异常,和正常屏幕显示画面有残缺部分。基本上看效果看着有相框的感觉了,功能应该算实现了80%直接代码patch需要vip学员才可以获取。本文章更多详细代码和资料需要购买课程获取。获取优惠下面公众号联系。

2024-07-24 15:31:50 43

转载 安卓系统应用框架framework开发必须要会的Settings值传递接受数据

做系统应用,系统框架开发,这种简单数据类型的值传递,完全可以使用Settings值方式,完全不需要使用麻烦的binder,aidl方式,这个Settings可以大大减轻各个进程通讯的耦合程度,减少代码上的依赖关系。一定要掌握这个Settings的灵活使用本文章更多详细代码和资料需要购买课程获取获取优惠下面公众号联系其他课程七件套专题:点击这里。

2024-07-24 15:28:21 62

转载 投屏音视频基础知识-千里马安卓framework手把手带你做投屏

所以每一张图像的裸数据都是很大的。(1)根据视觉暂留原理,连续的图像变化每秒超过24帧(Frame)画面以上时,人眼无法辨别单幅的静态画面,看上去是平滑连续的视觉效果,这样连续的图像画面构成即视频。YUV 的优势,人眼对亮度敏感,对色度不敏感,因此减少部分 UV 的数据量,人眼无法感知,从而可以通过压缩 UV 的分辨率, 在不影响观感的前提下,减小视频的体积;硬解码,指的是利用专门的解码芯片来加速解码,通常硬解码的解码速度会快很多,但是由于硬解码由各个厂家实现,质量参差不齐,非常容易出现兼容性问题;

2024-07-24 15:25:49 36

转载 aosp 14的WMShell相关的proto日志如何查看打印-framework分屏相关

针对WMShell包下面的Proto日志,在高版本aosp14统一只能使用方式来开启,而且相关logcat过滤的TAG需要去看看具体对应TAG是啥

2024-07-03 15:23:20 65

转载 安卓分屏下Activity启动其他Activity为啥也在分屏下?-framework深入剖析

1、对于ActivityRecord来说相对非常简单,就是ActivityRecord的windowmode跟着Task混就可以了,Task的WindowMode是啥就是啥2、针对新创建的Task情况有点不一样,他们和启动这个新建Task的sourceTask有关系,如果sourceTask里面是分屏相关的task那么新建Task的的Parent就会变成和sourceTask的一样的rootTask,否则就是TaskDisplayArea即没有rootTask。本文章更多详细代码和资料需要购买课程获取。

2024-07-01 14:52:44 70

转载 Acitity跳转延时10s会导致anr的时序问题讨论

整个时序来说Activity的onCreate,onResume对应的LaunchActivtyItem的消息,在systemserver的realStartActivity就已经比focus的消息要早,导致app主线程早就有了onCreate,onResume的任务,focus消息还需要来回和sf跨进程后才可以到InputDispatcher,InputDispatcher。那么这个时候handler里面就有了相关的onCreate,onResume等执行的消息调用,都会在主线程执行。

2024-06-28 14:39:18 42

转载 ActivityRecordInputSink的触摸区域TouchRegion详细解读

到这里就完美解释清楚了ActivityRecordInputSink巨大区域是哪里来的,本质还是因为replaceTouchableRegionWithCrop设置成了true,在sf计算时候会使用getMaxDisplayBounds作为Region。那这里没有设置这个TouchRegion,但是input中又有TouchRegion,那么难道是Sf或者input中设置的?上面是针对普通的WindowState来说都是这样一个设置流程,最后的input相关信息都是上面流程设置到sf的。

2024-06-25 15:44:46 48

转载 安卓VirtualDisplay虚拟屏幕如何实现没有内容显示mirror内容(aosp14版本)

这里面主屏幕的Layer都会在虚拟屏幕有一个对应的Mirror Layer即直接对主屏幕的每一个layer进行了Mirror,再看看这些Mirror Layer的layerStack都是2,这样就可以和Virtual Display的layerStack进行完全的匹配。这里就是上面我提到的变化的是layerStack的对象,原来aosp13上面变化是Display的layerStack值,但是在aosp14上面变化的是Layer对应的layerStack。虚拟屏幕展示是时钟app,和主屏幕展示不一样。

2024-06-17 10:06:12 87

转载 安卓VirtualDisplay虚拟屏幕如何实现没有内容显示mirror屏幕内容(aosp13)

VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR设置1、会在DisplayContent的mApplySurfaceChangesTransaction中对Display是否有内容进行确定2、一旦涉及了Display的上有内容到无内容的变化会调用setDisplayLayerStack来重新设置layerStack3、在sf中layer会对layerStack进行匹配然后决定显示哪个Display本文章更多详细代码和资料需要购买课程获取。

2024-06-17 10:03:16 227

转载 vip学员作业--横屏下面怎么自适应展示竖屏应用方案征集(排除原生letterbox方式)

当前的原生letterbox确实一定程度上解决了竖屏app在横屏显示的问题,但实际上了各个应用后问题还是很多,特别是对各个app展示适配情况,一样有很多很多的ui显示问题。这个希望各位学员积极参与哈,这里大家不用拿自己厂商的方案分享害怕涉及泄密等,但是完全可以调研xxx竞品厂商的方案拿来分享,,大家懂的。1、想一想在分屏pip自由窗口课程时候,自由窗口那么小的窗口是如何做到的布局显示正常,完美的使用,布局不乱。以上是一些思路,大家可以朝一个方向努力,实现对这个痛点的解决,然后给出相关的成果秀。

2024-06-11 10:46:30 39

转载 安卓虚拟屏幕锁屏画面源码分析部分KeyguardPresentation

也就从SurfaceFlinger的图层中只可以发现一个线索,那就是这个图层本质是systemui负责创建的window,但是这个window的名字其实并没有,只知道systemui进程创建的。那么也不是我们自己自定义显示的,那这个画面到底在哪里?上面window相关的dump信息又相对多了一些线索,比如这里的 ty=KEYGUARD_DIALOG,即可以知道window创建的类型。在搞虚拟多屏和投屏相关业务时候,发现在锁屏时候一个画面比较特殊,但是明显我们自己也没有给虚拟屏幕和投屏有绘制过这个页面。

2024-06-11 10:44:08 77

转载 wms中对屏幕进行修改wm size设置屏幕宽高原理剖析

所以这里其实就是最核心的transform,有了它就可以把自定义的屏幕size和屏幕本身size进行统一,让1440x2960大小屏幕可以显示1080x1920屏幕大小内容。从上面一系列的dumpsys可以得出结论,一旦wm size成了新的屏幕size后,整个系统的大小确实变化了,连displayContent也是变化的。明显看到差异就是屏幕上下有黑边了,那么下面就来调研这个wm size是怎么做的的display大小修改的。私聊作者+v(androidframework007)

2024-06-05 11:32:53 53

转载 aosp14安卓14无法事件注入报错was not directed at a window owned by uid

既然上面分析的Instrumentation已经不行了,也不太可能修改framework把Instrumentation代码修改或者扩展,这里就使用和scrcpy的方法一样,采用InputManager接口,但是接口又是hide的,可以和scrcpy一样采用反射方式,我这边给出一种新方法,不采用反射,用的是一个模拟假接口,类和接口和InputManager一模一样,但是空实现。明显看到这里居然报错了,,,明明android 10版本是好的,那这个是为啥?所以可以排除掉没有权限的问题,那么为啥还会报错呢?

2024-06-05 11:30:57 298 1

转载 aosp14的分屏接口ISplitScreen接口获取方式更新-学员疑问答疑

专题时候,做相关分屏做小桌面项目时候,因为原来课程版本是基于android 13进行的讲解的,但是现在公司已经开始逐渐进行相关的android 14的适配了,但是android 14这块相比android 13还是有一些差异,适配起来有点难度,刚好借此机会给大家分享一下。目标就是为了可以调用ISplitScreen相关接口,aosp13的SplitScreen其实本质也是调用的ISplitScreenImpl的接口。这个地方是有直接的splitscreen可以获取,所以当时使用的是splitscreen。

2024-05-29 15:18:41 73

转载 分享常见selinux相关命令

SELinux出现之前,Linux上的安全模型叫DAC,全称是Discretionary Access Control,翻译为自主访问控制。DAC的核心思想很简单,就是:进程理论上所拥有的权限与执行它的用户的权限相同。比如,以root用户启动Browser,那么Browser就有root用户的权限,在Linux系统上能干任何事情。显然,DAC太过宽松了,所以各路高手想方设法都要在Android系统上搞到root权限。那么SELinux如何解决这个问题呢?

2024-05-24 15:00:20 79

转载 android app转framework应该如何选模块?

想入坑Framework开发,如果你之前没有比如上面的多媒体,和外设模块相关经验加buffer,那么强烈建议你选着Framework rom开发模块方向,这个方向相对就业比较好,岗位很多,公司绩效也较好,当然肯定比其他模块就累一些,但是属于公司核心业务自然发展比冷门边缘化模块好,比如其他wifi,蓝牙模块,那可能整个大公司就几个人在负责这块业务,因为这些业务其实新需求很少,大部分都是维护稳定性为主,很多时候还依赖芯片方案商。本文章更多详细代码和资料需要购买课程获取。

2024-05-20 15:38:13 46

转载 黑屏实战之横屏情况下分屏黑边问题bug-学员提供

hi,粉丝朋友们,学员们学习了wms、ams专题后,那么整个系统的闪黑,黑屏,部分黑等问题,说实话大部分这类问题对于大家来说都没有太大难度了。该问题其实属于比较常见的部分黑问题场景,这个比较好一点就是他可以在刘海屏幕下面是必现而且非刘海屏幕不复现,而且在稍微拖动分割线后,分屏又可以恢复正常,所以前后异常对比都很方便。大家自己尝试解决,找出原因哈,相关问题提供的学员,已经使用马哥课程的黑屏相关解决追踪方法找到了根本原因而且也修复,希望大家独立拿这个来练手哈,体验真正企业级别实战。环境aosp14 r15。

2024-05-20 15:36:36 90

转载 InputWindowHandle的token怎么实现和InputChanel的token一样?-学员答疑

token是在InputChannel创建时候就有构造----》传递给WindowState的InputWindowHandleWrapper中------》InputMonitor遍历传递给Sf---------》Sf传递给InputDispatcher本文章更多详细代码和资料需要购买课程获取私聊作者+v(androidframework007)其他课程七件套专题:点击这里。

2024-05-14 14:57:22 38

转载 framework工作中遇到陌生窗口怎么高效找代码?-vip学员疑问解答

经常在实际开发过程中会遇到系统中各个不同的窗口,特别是系统中的各个窗口,种类非常非常多,不同应用不同场景等,有时候需要对相关的窗口进行修改等需要,就需要找到对应的窗口代码,然后修改相关的需求。上面从window名字线索只获取了个popupwindow名字,这个window名字线索平时对于一些系统窗口有自己独特名字的是非常有作用的哈,但是今天这个明显不太行啊,因为popupwindow太多了,没办法靠window的名字就准确找到窗口的源码位置。那估计系统中这样的多如牛毛,如同大海捞针,下面来详细介绍方法。

2024-05-14 14:55:05 31

转载 perfetto结合源码分析input输入的iq,oq,wq部分

其实这个在input专题的源码分析时候就有讲解过,不过那时候是完全基于源码分析的,没有和systrace或者perfetto结合起来分析,今天马哥就来补充一下这块知识。同学们经常在分析systrace或者perfetto时候,都会面临一个分析iq,oq,wq的问题,这个iq,oq,wq,到底是指的什么呢?这里3个过程中,离我们app处理最近的当然是第三个步骤,经常说的iq,oq,wq其实也是属于InputDispatcher类里面的变量。注意啦,这里的oq是带着有具体的目标窗口的。

2024-05-10 08:38:58 81

转载 android.anim和android.anim.lf两个线程解析

在学员群中有学员朋友在分析systemserver的systrace和perfetto时候,提出了关于android.anim和android.anim.lf两个线程的相关疑问,主要是android.anim和android.anim.lf两个线程分别用于什么,有啥区别。其实上面的注释也讲的比较清楚了,核心就是为了动画更加流畅,改进成了动画不需要在单独依赖windowmanagerservice的大锁,所以独立出来了一个单独的动画独立线程android.anim.lf。android.anim还干些啥?

2024-05-10 08:37:04 41

转载 systemserver为啥很少同步跨进程调用app/DeadSystemException相关问题分析套路

基于上面分析那就基本上明白了导致系统死锁的直接原因,那就是因为systemserver发起了个同步的跨进程调用,这个跨进程调用半天没有得到对方回应,导致systemserver一直卡在这个同步调用这里。

2024-05-08 15:27:44 458

转载 Ubuntu 20.04上Android NDK编译FFmpeg 5.1全程笔记

上面就是ndk编译ffmepg的64位库简单过程哈,同理32位库也是一样,只需要改动一点config参数既可以,具体也给出对应sh脚本。然后对它进行解压既可以,这里也可以使用as自带的版本,或者不是ndk的r22版本试试,最好就下载和这里一样的版本。这些库和include的头文件放好,然后开始编写对应的CMakeList进行相关的修改。一般上面脚本可以直接拷贝使用,只需要改如下两项和路径直接关联的。有了相关的so和include后,既可以把它们用于开发app啦。建立一个简单的native c++的工程。

2024-05-08 15:24:45 51

转载 Vsync之app层面深入分析

前面文章和视频课程都是直接从SurfaceFlinger层面开始讲解Vsync部分的,当然vsync的主要核心逻辑也确实在SurfaceFlinger,但是一般vsync都是由app层面发起请求的,这一部分也还是有必要带大家了解清楚。createDisplayEventConnection方法,这个方法app发起跨进程调用后会到服务端BnSurfaceComposer,这个SurfaceFlinger是继承这个BnSurfaceComposer的。

2024-05-08 15:17:52 24

转载 System Alert /Overlay系统悬浮窗口被隐藏原理剖析

在使用系统悬浮窗口时候发现有一个问题,那就是悬浮窗口在其他应用上面显示的好好的。一旦打开设置界面后,就发现悬浮窗口直接被隐藏了,退出设置画面后悬浮窗口又展示了,这个是为啥,为啥悬浮窗会被无故异常?明显设置Activity多了一个如下的属性HIDE_NON_SYSTEM_OVERLAY_WINDOWS,也就是这个属性flag导致了设置为啥看不到悬浮窗口。上图可以看出在进入设置Activity后毫秒表就隐藏,退出设置后毫秒表才展示出来了。这个权限必须添加,注意和原来添加的。权限要注意不是一个,所以不要偷懒。

2024-05-08 15:13:54 33

转载 安卓投屏延时数据如何测试,测试工具如何写?

这种跨设备的投屏场景,流畅的体验是最重要的,这里就会要求投屏中最重要的一个性能指标,那就是投屏的延时。说到了有延时,那么如何科学的评估或者测量延时到底多少呢,人的感觉其实是最不靠谱的,因为我们一般很难感知几十毫秒的差异,除非有几百毫秒以上的差异才可能可以感知到?针对延时测量,首先的知道一个测量延时的数量级,这个延时其实一般都是在毫秒级别,所以测量工具开发时候就需要有一个毫秒表进行展示。2、进入复杂的游戏画面,比如王者荣耀,和平精英等画面,这里需要把毫秒表变成一个悬浮窗口,然后测量延时。

2024-05-07 09:14:04 56

转载 车机手机互联不同屏幕尺寸大小解决方案成果展示

手机用户可以继续操作手机画面,比如可以点击跳到各个应用比如微信,qq,但是投屏到车机的画面依旧可能是百度或者高德地图。手机用户可以继续操作手机画面,比如可以点击跳到各个应用比如微信,qq,但是投屏到车机的画面依旧可能是百度或者高德地图。这个主要实现是同一个屏幕大小尺寸的投屏情况,即和车载互联的屏幕显示手机镜像一样,以及很多市场上的投屏。这个主要实现是同一个屏幕大小尺寸的投屏情况,即和车载互联的屏幕显示手机镜像一样,以及很多市场上的投屏。1、input相关注入事件及相关权限。

2024-05-07 09:09:27 91

转载 android投屏程序线程无故卡死不执行,如何分析?

在针对线程无故卡死情况,日志方面也不打印输出情况,需要考虑多个手段来尝试定位分析出目前的线程状态,然后根据状态反推出程序中可能的疑点,最后尝试修改验证。本文章更多详细代码和资料需要购买课程获取私聊作者+v(androidframework007)其他课程七件套专题:点击这里。

2024-05-07 09:02:15 31

转载 某手机大厂安卓framework开发面试机试经验分享

当然会问一下你期望的薪水,这里注意哈人家可能会给你压力,比如你凭啥要 这么多薪水啥的,大家也要从容应对哈,不卑不亢,注意人家只是问问你期望,不是和你具体聊薪水。到这里了那就恭喜你了,你已经通过全部的面试和流程,可以认为你已经是人家认可的合格人才,至于薪水方面那么大家就根据自己情况要啦,也没啥技巧,毕竟人家会要求你提供相关的薪水证明材料,切记不要作假哈,真实面对,人家定薪水啥的一般也还是ok的,会根据你的级别和能力考虑,当然啦原来的薪水肯定有一定影响。所以真实的机试是怎么样的呢?

2024-05-07 09:00:08 102

转载 手把手教你aosp13/14上实现PRODUCT_BOOT_JARS/boot jar(有源码)-千里马framework

是否可以把Tv相关app需要接口都做成公共接口jar,然后这个接口jar自己去实现各个平台差异,即每个平台都会有不同的实现,但是对于Tv这个app来说并不关心,因为他只依赖一个公共接口jar就行,至于你这个接口jar具体实现自己根据平台自己来实现。类似依赖是中间件jar,中间层,apk只依赖中间层接口,具体差异中间层自己去平台对接。经常设备厂商可能开发一些功能时候会有一些和芯片厂商打交道,比如mtk,海思,amlogic,高通啥的。1、系统应用的情况,这种最为简单,因为不需要考虑相关权限访问的问题。

2024-04-11 15:58:48 124

转载 实时刷新率Fps实现相关知识讲解

1、利用FrameTimeLine来获取实时fps的数据2、直接使用SurfaceFlinger中的RefreshRateOverlay这个图层类来负责显示这个实时fps数据本文章更多详细代码和资料需要购买课程获取私聊作者+v(androidframework007)其他课程七件套专题:点击这里。

2024-04-11 15:55:03 78

android framework高级实战视频课程相关课件

android framework高级实战视频课程相关课件 android高级进阶 android系统源码开发 android系统定制 android rom开发 安卓框架学习视频 安卓系统学习 android高级知识高级工程师 千里马android android framework 入门课 实战课 跨进程通讯专题 安卓触摸系统input系统专题课

2022-05-21

430仿真器固件烧录文件

砖头恢复烧写器能芯片的程序msp1612 仿真器,百分百可用,都为txt的烧录文件,救活仿真器

2014-07-30

单片机红外遥控代码

单片机红外遥控代码

2013-11-26

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

TA关注的人

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