android15蓝牙编译问题

在android15下编译代码,如果遇到android.bluetooth.BluetoothHeadsetClient或者其他android.bluetooth下标记了hide的类找不到的错误。 需要加上如下2处修改:

需要在对应模块的android.bp文件中,加上:

libs: [
    "framework-bluetooth.impl"    
]

修改源码路径下/packages/modules/Bluetooth/framework/Android.bp

54 java_sdk_library {
55     name: "framework-bluetooth",
56     defaults: [
57         "framework-bluetooth-defaults",
58         "framework-module-defaults",
59     ],
60 
61     jarjar_rules: ":bluetooth-jarjar-rules",
62     installable: true,
63     optimize: {
64         enabled: false,
65     },
66     hostdex: true, // for hiddenapi check
67 
68     impl_library_visibility: [
69         "//external/sl4a/Common",
70         "//packages/modules/Bluetooth/android/app/tests/unit",
71         "//packages/modules/Bluetooth/android/pandora/server",
72         "//packages/modules/Bluetooth/framework/tests/bumble",
73         "//packages/modules/Bluetooth/service",
74         "//packages/services/Car/car-builtin-lib",
75         // TODO(240720385)
76         "//packages/services/Car/tests/carservice_unit_test",
77         ":__subpackages__",
           // 在这里加上修改,如果对应的模块在vendor下,那么修改如下:
           "//vendor:subpackages__"

78     ],

在andrdroid12下,源码编译的时候,原生蓝牙这部分代码是在framework/base下,我理解自定义模块不需要再手动引用什么包,就可以访问android.bluetooth.下的hide类。 但是在andrdroid15下,这部分代码被移到了packages下,就需要手动加上对framework-bluetooth.impl的引用。

另外,如果上述2步都做了,但还会报android.bluetooth.BluetoothHeadsetClient或者其他android.bluetooth下标记了hide的类的hide方法或者hide变量找不到, 需要在目标模块的bp中再加上

sdk_version: "core_platform"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值