Android14 AOSP 允许system分区和vendor分区应用进行AIDL通信

在Android14上,出于种种原因,system分区的应用无法和vendor分区的应用直接通过AIDL的方法进行通信,但是项目的某个功能又需要如此。

好在Binder底层其实是支持的,只是在上层进行了屏蔽。

修改 frameworks/native/libs/binder/BpBinder.cpp 文件,找到status_t BpBinder::transact方法,屏蔽相关判断语句或者错误返回即可。如下图:

diff 复制代码
diff --git a/native/libs/binder/BpBinder.cpp b/native/libs/binder/BpBinder.cpp
index 8d9955dd6..1476ab4e9 100644
--- a/native/libs/binder/BpBinder.cpp
+++ b/native/libs/binder/BpBinder.cpp
@@ -352,7 +352,7 @@ status_t BpBinder::transact(
                       Stability::levelString(stability).c_str(),
                       String8(getInterfaceDescriptor()).c_str(),
                       Stability::levelString(required).c_str());
-                return BAD_TYPE;
+                // return BAD_TYPE;
             }
         }

除非必要,不推荐这么做,所以还是保留了报错信息。强迫症可以删掉~

相关推荐
来来走走3 小时前
Flutter开发 网络请求
android·flutter
独行soc9 小时前
2025年渗透测试面试题总结-18(题目+回答)
android·python·科技·面试·职场和发展·渗透测试
雨白10 小时前
登录和授权:Cookie与Authorization Header机制详解
android
Frank_HarmonyOS11 小时前
【Android -- 多线程】Handler 消息机制
android
一条上岸小咸鱼12 小时前
Kotlin 基本数据类型(一):概述及分类
android·kotlin
没盐水菠萝12 小时前
Android - 动态切换桌面图标
android
AI 嗯啦12 小时前
SQL详细语法教程(三)mysql的函数知识
android·开发语言·数据库·python·sql·mysql
跨界混迹车辆网的Android工程师13 小时前
adb 发送广播
android
超勇的阿杰15 小时前
gulimall项目笔记:P54三级分类拖拽功能实现
android·笔记
峥嵘life16 小时前
Android 欧盟网络安全EN18031 要求对应的基本表格填写
android·安全·web安全