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

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

相关推荐
爱装代码的小瓶子1 小时前
【C++与Linux基础】进程间通讯方式:匿名管道
android·c++·后端
兴趣使然HX1 小时前
Android绘帧流程解析
android
JMchen1232 小时前
Android UDP编程:实现高效实时通信的全面指南
android·经验分享·网络协议·udp·kotlin
黄林晴3 小时前
Android 17 再曝猛料:通知栏和快捷设置终于分家了,这操作等了十年
android
有位神秘人3 小时前
Android获取设备中本地音频
android·音视频
JMchen1233 小时前
Android网络安全实战:从HTTPS到双向认证
android·经验分享·网络协议·安全·web安全·https·kotlin
CS创新实验室3 小时前
Pandas 3 的新功能
android·ide·pandas
ujainu3 小时前
护眼又美观:Flutter + OpenHarmony 鸿蒙记事本一键切换夜间模式(四)
android·flutter·harmonyos
三少爷的鞋3 小时前
为什么我不在 Android ViewModel 中直接处理异常?
android
草莓熊Lotso4 小时前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能