gpt4 book ai didi

Make 文件中的 Android 数据绑定(bind) (Android.mk)

转载 作者:行者123 更新时间:2023-12-02 11:22:50 24 4
gpt4 key购买 nike

根据很多示例,通过将以下代码段放入 来启用 android 数据绑定(bind)build.gradle 文件:

android {
....
dataBinding {
enabled = true
}
}

但是,我正在 AOSP 中开发一个使用 构建的 android 项目。制作文件 (Android.mk) .

所以我的问题是:我们如何在 android make 文件中添加对数据绑定(bind)依赖项的支持?

最佳答案

我找到了适合我的解决方案!
攀登的第一个障碍看起来像这样:error: package net.mulliken.pinenotenotebook.databinding does not exist我发现 Android Studio 会自动生成这些文件。它在 app/build/generated/data_binding_base_class_source_out/debug/out/net/mulliken/pinenotenotebook/databinding .为了将它合并到我的构建中,我从我的 Android 工作室工作区创建了一个符号链接(symbolic link)到 databinding_src在我的包文件夹中。
之后它仍然无法工作,因为它找不到 View 绑定(bind)包。您可能会收到这样的错误:error: package androidx.viewbinding does not exist我发现 google 有一个包含这个包的 repo,所以我将它克隆到我的 AOSP 工作区 frameworks 下。 .

[me aosp/frameworks] $ git clone -b studio-main https://android.googlesource.com/platform/frameworks/data-binding data-binding
然后,我从该路径创建了一个新的符号链接(symbolic link)到我的包目录,以便编译器可以找到该类:
[me packages/apps/MyAPP] $ ln -s ../../../../frameworks/data-binding/extensions/viewbinding/src/main/java/ androidx_viewbinding_src
在一天结束时我的 Android.bp文件如下所示:
android_app {
name: "PineNoteNotebook",

static_libs: [
"androidx.appcompat_appcompat",
"com.google.android.material_material",
"androidx-constraintlayout_constraintlayout",
"androidx.navigation_navigation-fragment",
"androidx.navigation_navigation-ui",
],

certificate: "platform",

srcs: [
"./**/*.java",
],

resource_dirs: ["res"],

product_specific: true,

sdk_version: "current",

optimize: {
enabled: false
},

required: ["libpinenote"],
}
我的包树看起来像这样:
.
├── Android.bp
├── AndroidManifest.xml -> /home/mulliken/AndroidStudioProjects/PineNoteNotebook/app/src/main/AndroidManifest.xml
├── androidx_viewbinding_src -> ../../../../frameworks/data-binding/extensions/viewbinding/src/main/java/
├── databinding_src -> /home/mulliken/AndroidStudioProjects/PineNoteNotebook/app/build/generated/data_binding_base_class_source_out/debug/out
├── res -> /home/mulliken/AndroidStudioProjects/PineNoteNotebook/app/src/main/res/
└── src -> /home/mulliken/AndroidStudioProjects/PineNoteNotebook/app/src/main/java/

关于Make 文件中的 Android 数据绑定(bind) (Android.mk),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45921861/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com