大量基础框架文件调整

This commit is contained in:
2026-07-31 00:08:37 +08:00
parent 42a30a73f9
commit 59b9139164
6 changed files with 97 additions and 67 deletions
+10 -27
View File
@@ -6,45 +6,33 @@ plugins {
android {
namespace = "com.lxh.battery_health"
// 🟢 从 34 升级到 36
compileSdk = 36
ndkVersion = flutter.ndkVersion
// 🟢 升级 NDK 版本
ndkVersion = "28.2.13676358"
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = "17"
kotlin {
compilerOptions {
jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17
}
}
defaultConfig {
applicationId = "com.lxh.battery_health"
minSdk = flutter.minSdkVersion
targetSdk = 34
targetSdk = 36
versionCode = flutter.versionCode
versionName = flutter.versionName
multiDexEnabled = true
}
signingConfigs {
// 如果没有正式签名,可以用 debug 签名代替(测试用)
// 正式发布时请替换为自己的密钥
getByName("debug") {
// debug 签名已经存在,无需额外配置
}
create("release") {
// 如果有正式签名,在这里配置
// keyAlias = "..."
// keyPassword = "..."
// storeFile = file("...")
// storePassword = "..."
}
}
buildTypes {
debug {
// 🟢 关键:debug 版本包名加 .dev 后缀
applicationIdSuffix = ".dev"
signingConfig = signingConfigs.getByName("debug")
isDebuggable = true
@@ -52,8 +40,7 @@ android {
isShrinkResources = false
}
release {
// release 版本不加后缀,保持原包名
signingConfig = signingConfigs.getByName("debug") // 若没有正式签名,先用 debug 签名
signingConfig = signingConfigs.getByName("debug")
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(
@@ -66,8 +53,4 @@ android {
flutter {
source = "../.."
}
dependencies {
// 无需额外添加 Activity KTX,因为已改用 startActivityForResult
}
}
+16 -2
View File
@@ -1,10 +1,24 @@
// 根项目构建脚本
plugins {
id("com.android.application") version "8.13.0" apply false
id("org.jetbrains.kotlin.android") version "2.2.21" apply false
}
// 统一重定向构建输出目录
// 🟢 添加 Flutter 本地仓库,让所有子模块都能找到 flutter_embedding_debug
allprojects {
repositories {
// Flutter SDK 本地引擎仓库(关键!)
maven {
url = uri("${System.getenv("FLUTTER_HOME")}/bin/cache/artifacts/engine")
}
// 备用:如果上面不行,用这个
maven {
url = uri("${rootProject.projectDir.parentFile}/build/host/out/repo")
}
google()
mavenCentral()
}
}
val newBuildDir: Directory = rootProject.layout.buildDirectory
.dir("../../build")
.get()
+2
View File
@@ -5,3 +5,5 @@ org.gradle.parallel=true
android.builtInKotlin=true
# This newDsl flag was added automatically by Flutter migrator
android.newDsl=true
android.useAndroidX=true
android.enableJetifier=true
+20 -5
View File
@@ -1,4 +1,5 @@
pluginManagement {
// 🟢 在 pluginManagement 内部读取 flutter.sdk
val flutterSdkPath = run {
val properties = java.util.Properties()
file("local.properties").inputStream().use { properties.load(it) }
@@ -10,14 +11,15 @@ pluginManagement {
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
repositories {
// 🟢 阿里云 gradle-plugin 镜像(专用
// 🟢 Flutter 本地仓库(最高优先级
maven {
url = uri("https://maven.aliyun.com/repository/gradle-plugin")
url = uri("$flutterSdkPath/bin/cache/artifacts/engine")
}
// 🟢 阿里云 public 聚合仓库(兜底)
maven {
url = uri("https://maven.aliyun.com/repository/public")
url = uri("$flutterSdkPath/packages/flutter_tools/gradle")
}
maven { url = uri("https://maven.aliyun.com/repository/public") }
maven { url = uri("https://maven.aliyun.com/repository/gradle-plugin") }
google()
mavenCentral()
gradlePluginPortal()
@@ -27,7 +29,20 @@ pluginManagement {
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
repositories {
// 🟢 阿里云镜像放在最前面
// 🟢 在 dependencyResolutionManagement 中再次读取 flutter.sdk
val flutterSdkPath = run {
val properties = java.util.Properties()
file("local.properties").inputStream().use { properties.load(it) }
val sdkPath = properties.getProperty("flutter.sdk")
require(sdkPath != null) { "flutter.sdk not set in local.properties" }
sdkPath
}
maven {
url = uri("$flutterSdkPath/bin/cache/artifacts/engine")
}
maven {
url = uri("$flutterSdkPath/packages/flutter_tools/gradle")
}
maven { url = uri("https://maven.aliyun.com/repository/public") }
google()
mavenCentral()
+46 -30
View File
@@ -77,18 +77,18 @@ packages:
dependency: "direct main"
description:
name: device_info_plus
sha256: a7fd703482b391a87d60b6061d04dfdeab07826b96f9abd8f5ed98068acc0074
sha256: "0891702f96b2e465fe567b7ec448380e6b1c14f60af552a8536d9f583b6b8442"
url: "https://pub.flutter-io.cn"
source: hosted
version: "10.1.2"
version: "13.2.0"
device_info_plus_platform_interface:
dependency: transitive
description:
name: device_info_plus_platform_interface
sha256: e1ea89119e34903dca74b883d0dd78eb762814f97fb6c76f35e9ff74d261a18f
sha256: "04b173a92e2d9161dfead145667037c8d834db725ce2e7b942bfe18fd2f45a46"
url: "https://pub.flutter-io.cn"
source: hosted
version: "7.0.3"
version: "8.1.0"
fake_async:
dependency: transitive
description:
@@ -105,6 +105,14 @@ packages:
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.0"
ffi_leak_tracker:
dependency: transitive
description:
name: ffi_leak_tracker
sha256: "4093d4ef9ca06ffe2786e73bfb25e22aa92112b9bb4ec941f11e3e6b61489a97"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.1.2"
file:
dependency: transitive
description:
@@ -122,10 +130,10 @@ packages:
dependency: "direct dev"
description:
name: flutter_lints
sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1"
sha256: "3105dc8492f6183fb076ccf1f351ac3d60564bff92e20bfc4af9cc1651f4e7e1"
url: "https://pub.flutter-io.cn"
source: hosted
version: "5.0.0"
version: "6.0.0"
flutter_markdown:
dependency: "direct main"
description:
@@ -180,18 +188,26 @@ packages:
dependency: transitive
description:
name: jni
sha256: c2230682d5bc2362c1c9e8d3c7f406d9cbba23ab3f2e203a025dd47e0fb2e68f
sha256: f038e58b4dc2c9037f50e233175086337e0b305e356d28211bf55f21c504cbd3
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.0"
version: "1.0.3"
jni_flutter:
dependency: transitive
description:
name: jni_flutter
sha256: "8b59e590786050b1cd866677dddaf76b1ade5e7bc751abe04b86e84d379d3ba6"
sha256: "7b717011ea40d04fd47c2731d3d1d36eb99eba3435c2753d62489e8c3c9991d5"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.1"
version: "1.0.2"
jni_util:
dependency: transitive
description:
name: jni_util
sha256: "1ba86da04a5f2bf18fde2edb235587e70c5b0fc5bd4ba955f46b00942c3fc35f"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.0"
leak_tracker:
dependency: transitive
description:
@@ -220,10 +236,10 @@ packages:
dependency: transitive
description:
name: lints
sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7
sha256: "12f842a479589fea194fe5c5a3095abc7be0c1f2ddfa9a0e76aed1dbd26a87df"
url: "https://pub.flutter-io.cn"
source: hosted
version: "5.1.1"
version: "6.1.0"
logging:
dependency: transitive
description:
@@ -268,18 +284,18 @@ packages:
dependency: transitive
description:
name: objective_c
sha256: "6cb691c686fa2838c6deb34980d426145c2a5d537491cb83d463c33cdbc726ed"
sha256: b7fb95a6d9a4f009edd63dc5ac69f07420b23a16161c6dd8660290b59c602e8e
url: "https://pub.flutter-io.cn"
source: hosted
version: "9.4.1"
version: "9.5.0"
package_config:
dependency: transitive
description:
name: package_config
sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc
sha256: ffcf4cf3d6c0b74ac43708d9f56625506e8a68aa935abe9d267a7330f320eb5d
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.0"
version: "3.0.0"
path:
dependency: "direct main"
description:
@@ -348,18 +364,18 @@ packages:
dependency: "direct main"
description:
name: permission_handler
sha256: "59adad729136f01ea9e35a48f5d1395e25cba6cea552249ddbe9cf950f5d7849"
sha256: fe54465bcc62a4564c6e4db337bbaded6c0c0fa6e10487414436d163114784f6
url: "https://pub.flutter-io.cn"
source: hosted
version: "11.4.0"
version: "12.0.3"
permission_handler_android:
dependency: transitive
description:
name: permission_handler_android
sha256: d3971dcdd76182a0c198c096b5db2f0884b0d4196723d21a866fc4cdea057ebc
sha256: "1e3bc410ca1bf84662104b100eb126e066cb55791b7451307f9708d4007350e6"
url: "https://pub.flutter-io.cn"
source: hosted
version: "12.1.0"
version: "13.0.1"
permission_handler_apple:
dependency: transitive
description:
@@ -444,10 +460,10 @@ packages:
dependency: transitive
description:
name: shared_preferences_android
sha256: "93ae5884a9df5d3bb696825bceb3a17590754548b5d740eba51500afc8d088f5"
sha256: "0634e64bd719f89c012f392938e173521f535d3ecaf66558fa94a056d22b5cc7"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.4.26"
version: "2.4.27"
shared_preferences_foundation:
dependency: transitive
description:
@@ -569,10 +585,10 @@ packages:
dependency: transitive
description:
name: synchronized
sha256: "93b153dcb6a26dcddee6ca087dd634b53e38c10b5aa163e8e49501a776456153"
sha256: "61894a1956de6b4fc1aefd0892e109514a1a706cbece3ac59decd90ff5a7a423"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.4.1"
version: "3.4.1+1"
term_glyph:
dependency: transitive
description:
@@ -681,10 +697,10 @@ packages:
dependency: transitive
description:
name: vector_graphics_compiler
sha256: "142a9146f447d15b10bdc00e21d5f4d83e5b32bb5f8f8f5a04c75311344923a3"
sha256: "4dca4feb77dc3ec7f6e27e49c53241eb8217f55e4f9b12599a27f8903bca5682"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.2.6"
version: "1.3.0"
vector_math:
dependency: transitive
description:
@@ -713,18 +729,18 @@ packages:
dependency: transitive
description:
name: win32
sha256: d7cb55e04cd34096cd3a79b3330245f54cb96a370a1c27adb3c84b917de8b08e
sha256: ba6f4bba816c8d7e3c1580e170f3786d216951cc6b94babc3b814c08d2cb2738
url: "https://pub.flutter-io.cn"
source: hosted
version: "5.15.0"
version: "6.3.0"
win32_registry:
dependency: transitive
description:
name: win32_registry
sha256: "21ec76dfc731550fd3e2ce7a33a9ea90b828fdf19a5c3bcf556fa992cfa99852"
sha256: "73b1d78920a9d6e03f8b4e43e612b87bf3152a0e5c5e5150267762b7c4116904"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.5"
version: "3.0.3"
xdg_directories:
dependency: transitive
description:
+3 -3
View File
@@ -30,8 +30,8 @@ environment:
dependencies:
flutter:
sdk: flutter
permission_handler: ^11.3.0
device_info_plus: ^10.1.0
permission_handler: ^12.0.3
device_info_plus: ^13.2.0
cupertino_icons: ^1.0.8
sqflite: ^2.3.0
path_provider: ^2.1.0
@@ -56,7 +56,7 @@ dev_dependencies:
# activated in the `analysis_options.yaml` file located at the root of your
# package. See that file for information about deactivating specific lint
# rules and activating additional ones.
flutter_lints: ^5.0.0
flutter_lints: ^6.0.0
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec