diff --git a/app/build.gradle b/app/build.gradle index a5b2052..ed80e36 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,46 +1,71 @@ plugins { + // 应用 Android 应用插件(通过别名引用 libs 中的插件配置,需在 settings.gradle 中定义依赖) alias(libs.plugins.android.application) } android { + // 配置 Android 项目的命名空间(Android Studio Arctic Fox 及以上版本推荐设置) namespace 'net.micode.notes' + // 设置编译 SDK 版本(使用 Android API 35 进行编译) compileSdk 35 + packaging { -// resources.excludes.add("META-INF/DEPENDENCIES"); -// resources.excludes.add("META-INF/NOTICE"); -// resources.excludes.add("META-INF/LICENSE"); -// resources.excludes.add("META-INF/LICENSE.txt"); -// resources.excludes.add("META-INF/NOTICE.txt"); + // 资源打包配置:排除不需要的文件(避免与第三方库的资源冲突) + resources { + resources.excludes.add("META-INF/DEPENDENCIES"); + resources.excludes.add("META-INF/NOTICE"); + resources.excludes.add("META-INF/LICENSE"); + resources.excludes.add("META-INF/LICENSE.txt"); + resources.excludes.add("META-INF/NOTICE.txt"); + } } + defaultConfig { + // 应用唯一标识符(需与 AndroidManifest.xml 中的 package 保持一致) applicationId "net.micode.notes" + // 最小支持的 Android 版本(API 24 = Android 7.0) minSdk 24 + // 目标 Android 版本(建议与 compileSdk 保持一致) targetSdk 35 + // 版本号(用于内部版本控制,整数,递增) versionCode 1 + // 版本名称(显示给用户的版本号,字符串) versionName "1.0" + // 测试工具运行器(用于 Android instrumentation 测试) testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { - minifyEnabled false + // 发布版本配置 + minifyEnabled false // 关闭代码混淆(true 为开启,需配合 ProGuard 规则) + // ProGuard 规则配置(优化版 Android 基础规则 + 自定义规则文件) proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } + compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 + // Java 编译选项(统一项目 Java 版本为 11) + sourceCompatibility JavaVersion.VERSION_11 // 源文件兼容性 + targetCompatibility JavaVersion.VERSION_11 // 目标字节码兼容性 } } dependencies { + // 第三方库依赖管理(建议通过 libs 别名集中声明,位于 build.gradle.kts 或 settings.gradle) + + // HTTP 客户端库(Apache HttpClient 4.5.14,注意:Android 6.0+ 需动态申请网络权限) implementation("org.apache.httpcomponents:httpclient:4.5.14") - implementation libs.appcompat - implementation libs.material - implementation libs.activity - implementation libs.constraintlayout - testImplementation libs.junit - androidTestImplementation libs.ext.junit - androidTestImplementation libs.espresso.core + + // AndroidX 支持库 + implementation libs.appcompat // AppCompat 兼容性库(必选) + implementation libs.material // Material Design 组件库 + implementation libs.activity // Activity 组件扩展库 + implementation libs.constraintlayout// 约束布局库(推荐的布局方式) + + // 测试依赖 + testImplementation libs.junit // JUnit 4 测试框架(本地单元测试) + androidTestImplementation libs.ext.junit // AndroidX JUnit 扩展(Instrumentation 测试) + androidTestImplementation libs.espresso.core // Espresso UI 自动化测试库 } \ No newline at end of file diff --git a/app/src/main/res/color/primary_text_dark.xml b/app/src/main/res/color/primary_text_dark.xml index 7c85459..2f297c3 100644 --- a/app/src/main/res/color/primary_text_dark.xml +++ b/app/src/main/res/color/primary_text_dark.xml @@ -1,22 +1,27 @@ - + + + + + + + + + + + \ No newline at end of file