Android源码编译时,有的aidl文件文为何没有转为java文件?

export_aidl_headers: true
generate_traces: true

Android R aidl文件转换为java文件方法

android源码全编译后,aidl文件生成的java或cpp文件的路径:
out/soog/.intermediates/

aidl源码路径:system/tools/aidl

android源码全编译后aidl命令路径:
out/host/linux-x86/bin/aidl


build/soong/cc/library.go
build/soong/java/base.go
搜索aidl相关用法

原因是:少了export_aidl_headers配置。
在Android.bp文件中添加export_aidl_headers: true配置,然后,编译全编译或编译相关模块。

 aidl : {
     export_aidl_headers: true,
     local_include_dirs: ["aidl"],
     include_dirs: [
         "frameworks/native/aidl/gui",
     ],
},

generate_traces: true用于在aidl文件转化为java或cpp时添加trace。
这样通过perfetto工具抓trace时,就能很方便的看到aidl的Bp端到Bn端的跳转trace。

Android perfetto性能分析工具
rk3588s_s_boe_4k4k:/data/misc # atrace --list_categories
         gfx - Graphics
       input - Input
        view - View System
  	...
adb shell perfetto gfx view sched wm am sm hal res rs ss  aidl power input irq freq idle load workq binder_driver thermal -o /data/misc/perfetto-traces/trace -t 10s
Logo

一站式 AI 云服务平台

更多推荐