环境:
aosp 10.0 源码
android studio 版本 2024.1.1
gradle 6.5 不确定这个版本是否要调整
以前一直在源码的环境下编译和调试,现要用AS独立编译和调试,在网上看了很多帖子,貌似作用不是很大。
求助在这方面有经验的同学指点一二
目前在网上寻找的方法目录结构如下:
因Android 9 与 Android 10 区别的问题,不确定这种目录结构是否正确。5个moudel下面只有build.gradle配置了,下面什么都没放。
SystemUI中Android.bp如下:
java_library {
name: "SystemUI-proto",
srcs: ["src/**/*.proto"],
proto: {
type: "nano",
},
}
java_library {
name: "SystemUI-tags",
srcs: ["src/com/android/systemui/EventLogTags.logtags"],
}
android_library {
name: "SystemUI-core",
srcs: [
"src/**/*.kt",
"src/**/*.java",
"src/**/I*.aidl",
],
resource_dirs: [
"res-keyguard",
"res",
],
static_libs: [
"SystemUIPluginLib",
"SystemUISharedLib",
"SettingsLib",
"androidx.legacy_legacy-support-v4",
"androidx.recyclerview_recyclerview",
"androidx.preference_preference",
"androidx.appcompat_appcompat",
"androidx.mediarouter_mediarouter",
"androidx.palette_palette",
"androidx.legacy_legacy-preference-v14",
"androidx.leanback_leanback",
"androidx.slice_slice-core",
"androidx.slice_slice-view",
"androidx.slice_slice-builders",
"androidx.arch.core_core-runtime",
"androidx.lifecycle_lifecycle-extensions",
"androidx.dynamicanimation_dynamicanimation",
"androidx-constraintlayout_constraintlayout",
"iconloader_base",
"SystemUI-tags",
"SystemUI-proto",
"dagger2-2.19",
"jsr330"
],
manifest: "AndroidManifest.xml",
libs: [
"telephony-common",
],
aaptflags: [
"--extra-packages",
"com.android.keyguard",
],
plugins: ["dagger2-compiler-2.19"],
}
android_library {
name: "SystemUI-tests",
manifest: "tests/AndroidManifest.xml",
resource_dirs: [
"tests/res",
"res-keyguard",
"res",
],
srcs: [
"tests/src/**/*.kt",
"tests/src/**/*.java",
"src/**/*.kt",
"src/**/*.java",
"src/**/I*.aidl",
],
static_libs: [
"SystemUIPluginLib",
"SystemUISharedLib",
"SettingsLib",
"androidx.legacy_legacy-support-v4",
"androidx.recyclerview_recyclerview",
"androidx.preference_preference",
"androidx.appcompat_appcompat",
"androidx.mediarouter_mediarouter",
"androidx.palette_palette",
"androidx.legacy_legacy-preference-v14",
"androidx.leanback_leanback",
"androidx.slice_slice-core",
"androidx.slice_slice-view",
"androidx.slice_slice-builders",
"androidx.arch.core_core-runtime",
"androidx.lifecycle_lifecycle-extensions",
"androidx.dynamicanimation_dynamicanimation",
"androidx-constraintlayout_constraintlayout",
"SystemUI-tags",
"SystemUI-proto",
"metrics-helper-lib",
"androidx.test.rules", "hamcrest-library",
"mockito-target-inline-minus-junit4",
"testables",
"truth-prebuilt",
"dagger2-2.19",
"jsr330"
],
libs: [
"android.test.runner",
"telephony-common",
"android.test.base",
],
aaptflags: [
"--extra-packages",
"com.android.keyguard:com.android.systemui",
],
plugins: ["dagger2-compiler-2.19"],
}
android_app {
name: "SystemUI",
static_libs: [
"SystemUI-core",
],
resource_dirs: [],
platform_apis: true,
product_specific: true,
certificate: "platform",
privileged: true,
optimize: {
proguard_flags_files: ["proguard.flags"],
},
libs: [
"telephony-common",
],
dxflags: ["--multi-dex"],
aaptflags: [
"--extra-packages",
"com.android.keyguard",
],
required: ["privapp_whitelist_com.android.systemui"],
}
// Only used for products that are shipping legacy Recents
android_app {
name: "SystemUIWithLegacyRecents",
overrides: [
"SystemUI",
],
platform_apis: true,
certificate: "platform",
privileged: true,
dxflags: ["--multi-dex"],
aaptflags: [
"--extra-packages",
"com.android.keyguard",
],
optimize: {
proguard_flags_files: ["proguard.flags", "legacy/recents/proguard.flags"],
},
static_libs: [
"SystemUI-core",
],
libs: [
"telephony-common",
],
srcs: [
"legacy/recents/src/**/*.java",
"legacy/recents/src/**/I*.aidl",
],
resource_dirs: [
"legacy/recents/res",
],
manifest: "legacy/recents/AndroidManifest.xml",
}
寻求各位同学的帮助!!!十分感谢,后续成功了,会无偿分享出来。