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;
             }
         }

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

相关推荐
千里马学框架22 分钟前
安卓系统中线程优先级Priority查看方式汇总
android·framework·线程·安卓framework开发·优先级·priority
沐怡旸26 分钟前
【Android】Handler/Looper机制相关的类图和流程图
android
生莫甲鲁浪戴32 分钟前
Android Studio新手开发第二十一天
android·ide·android studio
生莫甲鲁浪戴33 分钟前
Android Studio新手开发第二十二天
android·ide·android studio
用户41659673693551 小时前
Jetpack Compose 中实现带圆角边框的单词级富文本效果(分词与布局实践)
android
顾林海1 小时前
Android UI优化:让你的APP从“卡顿掉帧”到“丝滑如德芙”
android·面试·性能优化
啊森要自信1 小时前
【MySQL 数据库】MySQL用户管理
android·c语言·开发语言·数据库·mysql
黄毛火烧雪下2 小时前
(二)Flutter插件之Android插件开发
android·flutter
2501_916007472 小时前
iOS 上架技术支持全流程解析,从签名配置到使用 开心上架 的实战经验分享
android·macos·ios·小程序·uni-app·cocoa·iphone
sakoba4 小时前
MySQL的json处理相关方法
android·学习·mysql·json