- 博客(19)
- 收藏
- 关注
原创 Android12.0 需求开发篇之系统水印显示
产品要求设备启动完成后,在系统界面上显示一个版本信息水印,后续会有相关版本号在该信息上显示。至此,本章节系统水印显示需求开发结束, 如有不当,欢迎指正。显示,其中获取版本信息布局资源,配置布局参数,显示在。,我们显示的水印是在当前视图布局上重新盖上一层。:相应资源标识符定义,这里是对应新增的布局文件。方法将配置的布局属性完成添加实现水印图显示。文本实际显示内容,区分中文以及英文两种。水印显示如何实现,这部分就需要借助。布局参数设置布局效果,之后通过。布局文件相关配置,以及相关。文本显示内容配置,和。
2024-10-20 09:19:48
265
原创 Android12.0 需求开发篇之动态显示导航栏
NavigationBarController.java:导航栏实例类,内部封装实际隐藏与显示的系统方法。使用广播形式来进行导航栏的动态隐藏与显示,当发送相应广播时进行对应系统行为。窗口已经存在,不能重复创建,所以在上述的实现方案时,通过变量。用来进行动态广播注册逻辑以及相应显示与隐藏逻辑,这里调用。项目中需要导航栏能够动态显示或隐藏,基于此需求,定制。中接收外部发送的广播名,一般在该文件中进行简单声明。中自带的导航栏显示方法与我们自封装的删除方法。至此,本章结束,如有不当,欢迎指正。
2024-10-20 09:18:35
122
原创 Android12.0 需求开发篇+问题解决篇之IPC socket通信
服务端阻塞原因:这里由于使用的是Java实现的,借助了InputStream类,本身是使用了流的概念来进行的接收,而客户端send之后直接recv,没有进行流的通道关闭,导致Java Server服务端认为客户端没有发完,同样处于read状态阻塞住了。demo中的通信业务逻辑就以时间信息的传递为例,socket client C程序发送一个getTime标识后,由socket server端接收成功后,组合出来一个当前系统时间,之后再通过socket将服务端的时间信息回传到客户端。
2024-10-13 12:27:09
296
2
原创 Android12.0 问题分析+框架探索篇之RK3568 Setting Wifi关闭驱动ko不卸载原因分析
开始初步进行wifi 打开时系统框架探索,网络Settings作为入口来追踪.关键代码实现如图1@Override图逻辑创建Setting中网络连接界面的Fragment, 转入当我们进行点击打开和关闭wifi时,走入该逻辑文件中的方法,具体实现如下@Override//......//......图实现调用方法打开wifi。类为,具体实现如下文件路径:方法实现如图3= null) {
2024-10-13 12:20:02
145
原创 Android12.0需求开发篇之Native Binder Demo通信篇章三
另外补充一个Binder传输大数据超限的错误,出现类似错误时,读者均可以采用类似方法进行解决。经过序列化处理,转换成可跨进程传输,因为是跨进程传输,直接传非序列化的fd句柄是无法应用到跨进程场景下,所以需要进一步使用。进行的限制, 而传输图片或者是图像数据时,如果直接进行图像数据传输,随着后面由大图像场景时,会直接报错超出限制。图片,且图片内容和之前src.jpg图片内容一致,经测试功能正常,读者可自行测试。跨进程传输时,单次传输的数据是有大小限制的,单次传输的大小不能超过。,这样进行传输后,对端获取到。
2024-10-06 08:58:54
267
5
原创 Android12.0需求开发篇之Native Binder Demo通信篇章二
基于篇章一的基础上,增加Native Binder Demo通信的回调功能,由于之前信息数据传递是个单向链路,即由client端主动发起,发送到Server服务端,缺失服务端调用客户端的逻辑,而在实际场景中,应用组还需要双向通信。基于此,在之前BspServer服务端的基础上增加回调机制是较为合理的解决措施。2. 基本设计这里进行回调逻辑之前,就需要客户端先进行回调注册,将callback传递到服务端,之后当服务端触发相应逻辑时,判断callback。
2024-09-29 18:23:07
366
3
原创 Android12.0需求开发篇之Native Binder Demo通信篇章一
目前应用业务需要使用Native Binder进行通信并能够传输一帧一帧的图像,故需要提供一个基础通信demo供应用组同事进行参考开发。2.任务拆解这里就需要自行开发Native Binder服务端与客户端,且双方都有相应链路进行通信,依据业务需求,先将最终实现的任务进行拆解分为三部分基础通信实现,客户端client请求,服务端server处理。链路增加回调机制,客户端client注册回调,服务端server接收成功callback后在合适时机进行callback。
2024-09-29 18:22:29
195
原创 Android12.0 需求开发篇之Led服务框架设计与实现优化篇
在Android12.0 需求开发篇之LED服务框架设计与实现基础篇中,实际的实现链路设计上有点繁琐,是有一定的简化空间的,所以本章主要进行之前链路设计上的优化实现。2. 需求实现思路。
2024-09-22 11:40:38
114
原创 Android12.0 需求开发篇之Led服务框架设计与实现基础篇
其中java层中的路径符会在JNI内部的映射关系中被解析成,这里Java层的文件路径为则对应到JNI的C++文件就是同样JNI也会有对应的加载逻辑,我们按照JNI的编成规范将对应on_load中添加我们自己的led方法映射表注册即可,否则同样也会找不到;另外注意Java的参数在JNI环境下的替代描述,比如boolean会变为Z,其余参数不赘述。这里可能会有读者有疑惑,
2024-09-22 11:40:15
234
原创 Android12.0 需求开发篇之OTA AB升级篇章二
总体AB分区下OTA升级自定义分区就完成了,注意有些平台使用dd制作镜像在OTA差分包升级时会失败,因为OTA差分升级会进行分区版本校验,有的用dd指令作的自定义分区hexdump不正确导致校验不通过,请替换为mkuserimg相关指令处理。至此本章结束,如有不当,欢迎指正。
2024-09-15 11:54:41
305
原创 Android12.0 需求开发篇之OTA AB升级篇章一
至此,AB 分区OTA Demo升级就完成了,由于是进行验证以及逻辑部分供APK同事参考进行开发,界面布局等都没有进行优化,读者由兴趣可自行完善。如有不当,欢迎指正。
2024-09-15 11:54:19
620
原创 Android12.0 需求开发篇之IMS 5指touch全面屏手势需求开发总结
根据5指手势的需求, 其实全面屏模式下touch手势就基本都能根据对应定义的系统行为扩展出来,后续会根据实际情况继续更新其他touch手势需求篇章,如有不当,欢迎指正。
2024-09-08 10:43:50
207
原创 Android12.0 框架探索篇之RK平台getCameraIdList 获取流程
总体来说Camera 框架相对还是比较复杂,这里仅仅就是一个普通API,链路从APK到framekwork java,再到framework native, 再到HAL,再到部分ISP里,再到内核,这其中还不涉及预览流的框架流程, 流的处理会更为复杂,待后续专研后再开篇流的流程框架分析吧。至此本章节结束,如有不当, 欢迎指正。
2024-09-08 10:43:20
492
2
原创 Android12.0 需求开发篇之新增编译device
补充一点,新增device满足了在编译阶段进行不同产品的区分,那如果研发想在程序运行阶段进行不同产品区分要如何来实现呢?这个就需要另外一套独立的方案去实现了,一般芯片厂家或者OEM开发厂能够支持HWID和productID功能,HWID用来区分同产品不同批次,productID就用来在程序运行阶段在同芯片平台上区分不同产品, 当然这需要在对应主板上多个产品中同个gpio上的引脚设计不同,比如外接的电阻阻值不同或者其他硬件实现,这样在uboot。
2024-09-01 10:19:34
466
原创 Android12.0 框架探索篇之source lunch编译配置原理
本章节中讲解的内容是以AndroidProduct.mk rk3568s.mk BoardConfig.mk为主线.TARGET_PRODUCT以及TARGET_DEVICE这两个变量赋值为辅线进行的分析,之所以采用这种方式,主要是能够相对清晰的看到编译配置的流程,另外或者TARGET_DEVICE也经常被开发拿来做不同产品的编译区分依据。图32 流程主框图配合本章对应的新增编译device需求则在另外一篇需求开发篇之新增编译。
2024-09-01 10:19:06
235
原创 Android12.0 问题解决篇之EMS 以太网静态IP启动偶现失败问题解决
做研发在需求开发的同时也是经常和Bug打交道,遇到问题切莫慌乱,进行问题日志分析以及逐步拆解分析一般都会有解决处理方法,保证良好的问题处理心态会事半功倍,如有不当,欢迎指正。
2024-08-25 15:14:42
379
原创 Android12.0 需求开发篇之EMS Ethernet静态IP启动开发总结
经测试,以太网静态IP启动功能基本正常,但是在后续测试同事手里进行多次重启测试时发现偶现eth0 网卡节点IP缺失,该问题请跳转至Android12.0 问题解决篇之以太网静态IP启动偶现失败问题解决一文观看。若想要设置其他静态Ip时,则设置对应的系统属性并同时重启即可,因为是做成persist属性,本章节以太网静态启动需求开发结束, 如有不当,欢迎指正。
2024-08-25 15:13:21
582
原创 Android12.0 背景模糊blur属性开启后关机动画消失问题解决与流程总结
Android framework, SystemUI, 背景模糊
2024-04-13 21:30:54
1386
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅