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

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

相关推荐
程序leo源12 分钟前
深入理解指针
android·c语言·开发语言·汇编·c++·青少年编程·c#
俺不理解2 小时前
Android Compose 悬浮窗
android·生命周期·compose·悬浮窗
苏柘_level62 小时前
解决 Android 应用日志中 JDWP 报错问题
android
Devil枫2 小时前
安卓开发--使用android studio发布APP
android·ide·android studio
草明3 小时前
使用 ADB (Android Debug Bridge) 工具来截取 Android 设备的屏幕截图
android·adb
大熊的瓜地3 小时前
从0开始写android 之xwindow
android
哥咫匙传说4 小时前
frameworks 之 SystemServiceRegistry
android·linux·车载系统
未来之窗软件服务4 小时前
android 底层硬件通知webview 技术—未来之窗行业应用跨平台架构
android·运维·服务器
wy3136228214 小时前
android——录制屏幕
android·gitee