自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(85)
  • 资源 (4)
  • 收藏
  • 关注

原创 android16 固定了指纹fingerprint属性后导致OTA升级APK无法更新

本文分析了GMS认证中固定fingerprint属性导致OTA升级失败的问题。原逻辑通过比较fingerprint属性判断是否需要升级(mIsUpgrade),但固定fingerprint后该判断始终为false。解决方案是在PackageManagerService中新增版本检查逻辑:通过读取系统属性(persist.sys.rp_system_verison等)获取当前版本号,并与存储的旧版本比较,当版本不一致时将mIsUpgrade设为true,从而允许APK更新。该方法在保持fingerprint固

2026-02-06 19:21:22 13

原创 Android16 小窗口模式下小窗口导航栏调整到小窗口底部

摘要:该代码修改实现了大屏项目中自由窗口模式下导航栏的底部显示优化。主要修改包括:1)在WindowLayout.java中为自由窗口模式添加底部126像素的调整;2)在CaptionWindowDecoration.java中将标题栏背景设为黑色并固定按钮颜色;3)在WindowDecoration.java中调整标题栏容器位置至窗口底部上方126像素处。这些改动共同实现了将小窗口导航栏移至底部的功能需求。

2026-02-05 11:56:31 31

原创 Android16 RK3576 默认修改时间为24小时制

修改摘要:在SettingsProvider的DatabaseHelper.java文件中,新增了24小时制时间格式的默认设置。具体修改是在系统设置加载时插入TIME_12_24参数值为"24"的代码,确保系统默认采用24小时制时间显示方式。该修改位于系统设置初始化代码段中,与其他默认设置(如屏幕关闭超时等)一起加载。

2026-02-03 14:30:20 11

原创 Android16 屏蔽USB通知栏弹出(通知弹出时候屏幕色温异常)

摘要:针对RK3576平台大屏项目中USB接入时通知栏弹出导致屏幕色温异常的问题,提出解决方案。通过修改SystemUI中的NotificationListener.java文件,注释掉通知处理代码段(148-152行),屏蔽系统通知栏功能,从而避免色温变化问题,提升用户体验。修改方法简单直接,只需禁用mMainExecutor执行的通知处理逻辑即可。

2026-01-30 17:57:10 65

原创 Android16 RK3576 客制化logo

本文介绍了在RK平台上优化logo加载的方法。首先通过修改配置参数提高logo图片大小限制,将CONFIG_SYS_MALLOC_LEN从32MB提升到128MB,并调整MEMORY_POOL_SIZE和MAX_IMAGE_BYTES等参数。其次提出将logo图片存放在自定义分区中,在uboot阶段加载到内存地址的实现方案。通过新增read_resource_file_from_nodelete函数,从指定的mmc分区(0:18)读取logo图片,优先于系统默认方式加载。该方法解决了传统打包方式修改不便的问

2026-01-26 10:23:33 77

原创 Android16 rk3576支持NFTS格式U盘升级

摘要:为解决固件超过4G时无法使用FAT32格式U盘升级的问题,需修改配置文件支持NTFS格式。在rockchip_defconfig中添加NTFS_FS、NTFS_RW等宏定义;对于GKI内核,需在rockchip_gki.config中以模块形式添加NTFS支持,并在vendor_ramdisk_modules.load中引入ntfs.ko模块。修改包含NTFS读写支持、UTF8编码及936代码页等相关配置,同时保留原有的exFAT支持。

2026-01-16 17:40:42 49

原创 Android16 屏蔽系统状态栏下拉(导致在自定义画板上从上往下滑动断线)

摘要:针对RK大屏项目中自定义画板快速下滑时出现轨迹断线问题,分析发现是由于系统状态栏仍监听下滑手势导致。解决方案是通过修改SystemGesturesPointerEventListener.java文件,注释掉onSwipeFromTop()回调,从而屏蔽系统状态栏的下拉监听功能。该修改保留了状态栏不可见的特性,同时解决了画板断线问题。

2026-01-16 17:17:12 43

原创 Android16 RK3576遥控器长按只上报一次键值

大屏项目里面,有客户的使用遥控器,发现调节音量加减长按,不能连续上报键值。:一种是有效的重复码(~4476us),另一种是干扰脉冲(1652us)因为短按是有效果的,所以dts设备树里面,头码配置没有问题。这样修改后,异常遥控器长按就可以连续上报按键值了。通过异常和正常的遥控器,打印信息区别,发现异常的。正常遥控器的重复码脉冲宽度是。异常遥控器脉冲宽度是。

2026-01-16 13:05:55 206

原创 Android16 设置AP热点不自动关闭和热点默认设置5G

本文介绍了三种WiFi热点配置修改方法:1. 通过修改config.xml中的超时参数为2147483647,使WiFi热点不会自动关闭;2. 将5GHz支持参数改为true,开启5G热点模式;3. 在WifiApConfigStore.java中添加属性判断,当persist.sys.rp.default_ap_band属性为"5"时,默认使用5GHz频段。这些修改可以优化WiFi热点的使用体验,延长开启时间并优先使用5G频段。

2026-01-14 11:44:40 85

原创 android16 rk3576修改音量曲线

在framework/av/services/audiopolicy/config/default_volume_tables.xml里面。

2026-01-14 09:59:32 49

原创 Android16 提升绘图性能强制GPU渲染

摘要:本文分析了在低性能芯片(如Android16RK3576)上出现的悬浮图标黑框问题,通过研究开发者模式中的"停用HW叠加层"功能,发现其本质是强制使用GPU进行屏幕合成。文章详细追踪了相关代码实现路径,包括Settings应用中的HardwareOverlaysPreferenceController.java和SurfaceFlinger服务的交互过程,重点解析了通过SurfaceFlinger服务(1008指令)强制启用GPU绘图的机制,并提供了在自己的APK中实现该功能的代码

2026-01-13 20:10:18 278

原创 Android16 RK3576 修复u盘盘符中文乱码问题

摘要:针对RK3576 Android16系统中接入中文字符U盘出现乱码的问题,解决方案涉及修改e2fsprogs文件管理工具。核心修改包括:1) 在external/e2fsprogs/lib/blkid中添加libiconv字符库源码;2) 在Android.bp文件中添加字符库编译配置;3) 修改blkid.c和probe.c文件,增加GBK到UTF-8的字符编码转换功能。修改后重新编译系统,U盘中文乱码问题得到解决。该方案通过添加字符编码支持库和修改文件系统探测逻辑,实现了中文字符的正确显示。

2025-12-31 17:45:23 303

原创 Android16 默认关闭touch声音

摘要:通过分析Android系统设置,发现触摸反馈声音默认状态由Settings.System.SOUND_EFFECTS_ENABLED控制。该属性在DatabaseHelper.java中通过R.bool.def_sound_effects_enabled资源加载。修改frameworks/base/packages/SettingsProvider/res/values/defaults.xml文件中的<bool name="def_sound_effects_enabled&quot

2025-12-30 17:49:10 62

原创 Android16 修改设备名称

这样model属性就修改过来了,一般蓝牙等设备也是用的这个属性,所以要修改蓝牙设备的名称在RK平台的Android16版本,一般修改这个属性。

2025-12-30 12:56:43 63

原创 Android16 添加应用共享库

这里把需要添加的so名添加到列表里面,最终会解析生成到/system/etc/public.libraries.txt里面,这样就可以多个应用共享调用。

2025-12-29 19:17:38 70

原创 Android16 客制化开机视频

本文介绍了在RK3576平台上实现开机视频播放功能的修改方案。通过自定义系统属性persist.vendor.media.bootvideo来区分开机动画和视频模式,主要修改了bootanimation模块的相关代码。新增了checkVideoFile()函数检查视频文件是否存在及系统属性配置,并通过video()函数使用MediaPlayer实现视频播放功能。修改涉及Android.bp文件添加依赖库,以及在BootAnimation.cpp/h中新增视频播放相关变量和函数实现。该方案支持自定义视频播放时

2025-12-29 15:37:47 284

原创 Android16 rk3576添加触摸点数上限到40个点

本文介绍了在Android 16系统上实现40点触摸支持的修改方案。相比Android 15,Android 16对API添加有更严格的要求,需要在MotionEvent.java中添加@FlaggedApi批注。主要修改包括:1)在input_framework.aconfig中定义flag;2)在MotionEvent.java中添加40个AXIS_GENERIC轴常量并添加批注;3)将32位指针ID处理改为64位适配;4)更新相关API文档。修改涉及多个核心文件,包括PointerController

2025-12-27 17:04:46 274

原创 Android16 RK3576开启单个应用性能模式

本文解决了Android 16系统中降屏功能导致悬浮控件图标变黑的问题。通过分析发现,降屏时悬浮控件渲染不及时是问题根源。作者在RK3576设备的package_performance.xml配置文件中,为相关应用添加性能模式(mode="1"),包括壁纸服务、系统服务和测试工具等应用。经修改验证,开启性能模式后,降屏时悬浮控件能及时渲染,不再出现黑色图框现象。该方法通过提升关键应用的渲染优先级有效解决了显示异常问题。

2025-12-27 10:25:38 454

原创 Android16 提升自由窗口(小窗口)优先级

摘要:为解决全屏布局中自由窗口(小窗口)点击外部区域自动关闭的问题,通过修改Android系统源码提升自由窗口优先级。在TaskDisplayArea.java中调整getPriority()方法,为自由窗口模式(WINDOWING_MODE_FREEFORM)赋予最高优先级1,确保其不会被自动关闭。该修改适用于需要常驻显示的视频或图片窗口场景,通过系统层级的优先级调整实现功能需求。

2025-12-26 15:12:34 82

原创 Android16 大屏项目强制竖屏应用全屏显示

本文探讨了在大屏项目中针对竖屏应用的全屏显示解决方案。最初尝试通过修改DisplayRotation.java文件调整屏幕方向,但发现会导致整个屏幕旋转。最终采取在WindowLayout.java中添加特定应用判断的方案:当检测到应用宝(包名com.tencent.android.qqdownloader)时,直接设置3840×2160的全屏显示区域。该方法通过在computeFrames方法中添加条件判断和日志记录,实现了对指定应用的定制化全屏处理,避免了全局修改带来的副作用。

2025-12-25 12:53:56 89

原创 Android16 AP热点修改默认密码为12345678

这样就默认为12345678了。

2025-12-25 10:51:33 94

原创 Android16 3576强制关闭HDR模式

摘要:在RK3576的Android16项目中,原通过PRODUCT_PROPERTY_OVERRIDES属性禁用HDR的方法失效。解决方案改为直接修改硬件合成器代码,在drmhwctwo.cpp中将HDR模式强制设置为SDR模式。具体修改包括:注释掉原有HDR模式设置代码,新增强制设置DRM_HWC_SDR和HAL_DATASPACE_UNKNOWN参数的代码段,确保显示始终使用默认模式。该修改涉及CreateEmptyComposition和CreateFrameComposition两个函数,通过硬编

2025-12-24 15:50:44 271

原创 Android16 设置壁纸出现APK重启问题和悬浮控件等图标变成黑色图框

【代码】Android16 设置壁纸出现APK重启问题。

2025-12-24 14:23:10 185

原创 Android16 RK3576 Bluetooth source和sink模式切换

摘要:本文介绍了在RK3576平台上实现蓝牙A2DP模式动态切换的修改方案。通过在device配置文件中添加A2DP Sink相关属性,修改Bluetooth模块代码实现:1)在Config.java中增加persist.bluetooth.rka2dpsink属性控制模式切换;2)修改A2dpSinkStreamHandler.java取消音频焦点限制;3)调整btif_a2dp_sink.cc默认授予音频焦点。最终通过设置persist.bluetooth.rka2dpsink属性为true/false

2025-12-22 12:36:55 660

原创 Android16 屏蔽截图功能的编辑和分享按钮

【代码】Android16 屏蔽截图功能的编辑和分享按钮。

2025-12-20 10:59:07 69

原创 android16 RK3576 解决视屏会议app 不出图不出声的问题、解决scrcpy adb 投屏 主板无声的问题

【代码】android16 RK3576 解决视屏会议app 不出图不出声的问题、解决scrcpy adb 投屏 主板无声的问题。

2025-12-20 09:26:21 213

原创 Android16 3576 使用hdmi in导致和camera id冲突显示异常

在RK3576 Android16使用HDMI IN,因为需要降屏操作,所以需要走camera架构,走camera架构,camera的id不一致,画面显示异常,所以修改为保持id一致。hdmi in id调整为 200 ,显示hdmi in的时候走camera使用camera id 200。

2025-12-20 09:17:01 90

原创 Android16 修改外置USB camera旋转角度

把degree从90修改为0。

2025-12-19 14:32:40 94

原创 Android16 3576 a14和a16传递自定义编译变量

在RK3576的Android16项目里面,RK的Android16使用的是Android14的kernel和vendor,使用的是Android16的system,当做自适应编译的时候,怎么把Android16设置的自定义编译属性,给到Android14做自适应。当进入到a14目录后,会source一下envsetup.sh,在a14的envsetup.sh添加setrpbuild函数,可以带输入参数,这个参数就是需要的自定义编译属性。这里面自定义了一些编译属性,控制自定义模块的一些编译。

2025-12-19 11:09:05 67

原创 Android16 3576 u盘固件升级功能添加

1.在u-boot/drivers/power/pmic/rk8xx.c。这里是读取power键的寄存器判断长短按。

2025-12-18 17:29:07 432

原创 Android16 动态隐藏systemUI右侧音量条

本文介绍了如何屏蔽SystemUI系统音量条并显示自定义音量控制条的实现方法。主要通过两个步骤:1)在编译脚本中定义控制属性persist.rp.show.volume.dialog=off来隐藏系统音量条;2)修改SystemUI源码中的VolumeDialogImpl.java文件,在showH方法中根据属性值判断是否显示系统音量条。当属性值为off时直接return,从而屏蔽系统音量条的显示,实现自定义音量控制条的替代显示。该方法通过系统属性控制显示状态,具有灵活可控的特点。

2025-12-12 12:53:40 646

原创 Android16 RK3576 系统清理缓存

摘要:RK平台可通过操作/proc/sys/vm/drop_caches节点清理缓存,写入1-3实现不同等级清理(3为最高)。例如16G内存使用从5G降至2.6G。该命令可集成到代码中实现触发式缓存清理功能。

2025-12-12 11:37:47 301

原创 Android16 动态控制通知提示音的关闭和开启

因为通知提示音是在NotificationAttentionHelper.java的playSound方法里面,所以自定义一个系统属性来动态控制。

2025-12-10 15:21:52 94

原创 Android16 设置音量调节步数和初始化值

在大屏项目里面,音量需要类似电视机一样,调节步数需要修改为1,Android系统提供了属性可以进行修改: 添加: 这样音量最大步数修改为100,每次调节幅度都是1,音量初始值修改为30.

2025-12-10 15:02:16 147

原创 Android16 插入U盘禁止创建不需要的文件夹

【代码】Android16 插入U盘禁止创建不需要的文件夹。

2025-12-10 14:39:11 164

原创 Android16 客制化开机动画路径

大体逻辑是判断device/rockchip/common/bootshutdown目录如果有开机动画bootanimation.zip,文件,那么就copy到$(TARGET_COPY_OUT_SYSTEM)/media/目录,也就是system/media/目录,如果做客制化有时候不一定会有system/media/目录,所以需要修改。

2025-12-10 10:44:23 440

原创 Android15 安装APK时监听且替换安装

1.在framework/base/services/core/java/com/android/server/pm/InstallingSession.java里面。这里是当检测到安装GMS相关的环境检测应用的时候,终止安装,发送自定广播安装自定义应用,替换当前检测应用。收到广播后可以使用Runtime.getRuntime().exec安装预置的应用。

2025-12-09 13:01:23 207

原创 Android15 RK3588 安装简易版GMS

本文介绍了简易版GMS包的集成流程:1)获取仅包含核心组件的GMS包;2)通过修改编译脚本将etc和framework目录集成到系统;3)设置编译宏添加Google核心服务组件;4)修改系统源码以确保Google Play正常安装,包括调整安装验证逻辑、签名验证规则和指纹认证信息。最终编译后系统即可支持简易GMS功能。

2025-12-06 15:18:37 503

原创 Android LOCAL_PROPRIETARY_MODULE 和 LOCAL_PRODUCT_MODULE差异

在Android16 上面重新适配GBoard输入法,但是Android16使用的是Android14的kernel,vendor,编译脚本添加了LOCAL_PROPRIETARY_MODULE := true生成到vendor\app目录了,无法打包到系统里面,修改为LOCAL_PRODUCT_MODULE := true生成到product\app目录。

2025-12-04 13:58:17 89

原创 Android15 RK3588 修改音量曲线

一般修改DEFAULT_MEDIA_VOLUME_CURVE和DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE。

2025-12-02 15:51:01 168

rk3588-LightSensor.pdf

适合调试sensor驱动和framework的技术人员

2026-01-24

task-manager-a15

Android自定义分屏和最近任务适配Android15

2025-12-10

A16-task-manager

Android16上面的自定义任务栏和分屏资源

2025-12-10

android和JS交互的小DEMO

这是android和WEN端交互的demo,项目里面有个参数设置功能要WEN设置,达到通用效果,所以就写了一个demo,WEB界面自己写了很多,也有些是用的现有的model,因为WEB实在是没有弄过。 后续优化了很多,就不发布了,里面涉及了一些东西不便发布。 交互方式就是android端得到WEN端的数据,然后传给服务器,WEN端得到android端的数据进行初始化。

2015-08-18

android屏幕唤醒

产考了一些资料做了个屏幕唤醒的小程序,实现了开机监听,运行,定时启动服务的功能。

2014-07-03

(android)VOIP网络电话

以前开发的一个VOIP电话的demo,代码写的不是很好,已经没有维护了,是一个未完成的项目,进入主界面需自己修改一下MXL配置文件。 里面有联系人管理功能。 因为需要一直在后台运行,所以安装时会提示安装另一个APK,用来行进换醒操作,但在有的手机上面service还是会死掉。

2016-08-18

手机屏幕唤醒并震动

这是修改之后的,安装之后就能不断的唤醒,实现后台service持续运行,并且唤醒之后进入自定义界面,不用绕过屏幕锁。 实现了开机自动启动,还有保持wifi不休眠。 程序被杀之后可以再次启动,说明一下,无法绕过360等软件。

2014-07-11

空空如也

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

TA关注的人

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