Commit a9eab579 authored by dsq's avatar dsq

修改kotlin版本为101

parent 4ea9c9e7
...@@ -73,19 +73,31 @@ kotlin { ...@@ -73,19 +73,31 @@ kotlin {
isStatic = true // 设置framework为静态库 isStatic = true // 设置framework为静态库
} }
} }
// 配置OHOS(华为鸿蒙)arm64目标 // 配置OHOS(华为鸿蒙)arm64目标
ohosArm64 { ohosArm64 {
binaries.sharedLib { binaries.sharedLib {
baseName = "kn" // 共享库名称为kn baseName = "kn" // 共享库名称为kn
freeCompilerArgs += listOf("-Xbinary=sanitizer=address")
export(libs.compose.multiplatform.export) // 导出compose多平台库的接口 export(libs.compose.multiplatform.export) // 导出compose多平台库的接口
} }
val main by compilations.getting // 获取主编译内容 compilations.named("main") {
val resource by main.cinterops.creating { compilerOptions.configure {
// 配置C interop(cinterop)资源 freeCompilerArgs.addAll(
defFile(file("src/ohosArm64Main/cinterop/resource.def")) // cinterop定义文件 listOf(
includeDirs(file("src/ohosArm64Main/cinterop/include")) // cinterop包含目录 "-Xinclude-library=org.jetbrains.kotlin.native.platform.kba_devices",
"-Xdisable-default-klib-resolution"
)
)
}
} }
val main by compilations.getting // 获取主编译内容
// val resource by main.cinterops.creating {
// //配置C interop(cinterop)资源
// defFile(file("src/ohosArm64Main/cinterop/resource.def")) // cinterop定义文件
// includeDirs(file("src/ohosArm64Main/cinterop/include")) // cinterop包含目录
// }
} }
// 配置各平台的依赖关系 // 配置各平台的依赖关系
...@@ -125,11 +137,11 @@ Android 构建工具 → 打包成 APK ...@@ -125,11 +137,11 @@ Android 构建工具 → 打包成 APK
控制 APK 生成、打包、签名等 控制 APK 生成、打包、签名等
*/ */
android { android {
namespace = "com.dong.maxhap" // 设置包名 namespace = "com.dong.myapplication" // 设置包名
compileSdk = libs.versions.android.compileSdk.get().toInt() // 指定编译SDK版本 compileSdk = libs.versions.android.compileSdk.get().toInt() // 指定编译SDK版本
defaultConfig { defaultConfig {
applicationId = "com.dong.maxhap" // 应用ID applicationId = "com.dong.myapplication" // 应用ID
minSdk = libs.versions.android.minSdk.get().toInt() // 最低SDK版本 minSdk = libs.versions.android.minSdk.get().toInt() // 最低SDK版本
targetSdk = libs.versions.android.targetSdk.get().toInt()// 目标SDK版本 targetSdk = libs.versions.android.targetSdk.get().toInt()// 目标SDK版本
versionCode = 1 // 应用版本号 versionCode = 1 // 应用版本号
...@@ -161,7 +173,7 @@ val cmpVersion = versionCatalog.findVersion("composeMultiplatform") ...@@ -161,7 +173,7 @@ val cmpVersion = versionCatalog.findVersion("composeMultiplatform")
.orElseThrow { IllegalStateException("Missing version composeMultiplatform in version catalog") } .orElseThrow { IllegalStateException("Missing version composeMultiplatform in version catalog") }
.requiredVersion .requiredVersion
val skikoOverrideByCmpVersion = mapOf( val skikoOverrideByCmpVersion = mapOf(
"1.9.2-ez-001" to "0.9.22.2-ez-001", "1.9.2-ez-001" to "0.9.22.2-ez-001",
// 仅在需要强制的 CMP 版本这里新增 // 仅在需要强制的 CMP 版本这里新增
) )
val skikoOhosOverride = skikoOverrideByCmpVersion[cmpVersion] val skikoOhosOverride = skikoOverrideByCmpVersion[cmpVersion]
...@@ -211,8 +223,8 @@ val harmonyAppDir: File = run { ...@@ -211,8 +223,8 @@ val harmonyAppDir: File = run {
} }
// 字符串首字母大写工具函数 // 字符串首字母大写工具函数
fun String.capitalizeUS(): String = this.replaceFirstChar { fun String.capitalizeUS(): String = this.replaceFirstChar {
if (it.isLowerCase()) it.titlecase() else it.toString() if (it.isLowerCase()) it.titlecase() else it.toString()
} }
// 为不同类型(debug、release)OHOS构建注册Copy任务并发布到Harmony App目录 // 为不同类型(debug、release)OHOS构建注册Copy任务并发布到Harmony App目录
...@@ -220,7 +232,7 @@ arrayOf("debug", "release").forEach { type -> ...@@ -220,7 +232,7 @@ arrayOf("debug", "release").forEach { type ->
tasks.register<Copy>("publish${type.capitalizeUS()}BinariesToHarmonyApp") { tasks.register<Copy>("publish${type.capitalizeUS()}BinariesToHarmonyApp") {
group = "harmony" // 归类到harmony任务组 group = "harmony" // 归类到harmony任务组
dependsOn("link${type.capitalizeUS()}SharedOhosArm64") // 依赖于OHOS shared lib的链接任务 dependsOn("link${type.capitalizeUS()}SharedOhosArm64") // 依赖于OHOS shared lib的链接任务
into(harmonyAppDir) // 输出目标目录 into(harmonyAppDir) // 输出目标目录
from("build/bin/ohosArm64/${type}Shared/libkn_api.h") { // 复制头文件 from("build/bin/ohosArm64/${type}Shared/libkn_api.h") { // 复制头文件
into("entry/src/main/cpp/include/") // 指定目录 into("entry/src/main/cpp/include/") // 指定目录
} }
......
...@@ -15,7 +15,7 @@ androidx-collection = "1.4.5" ...@@ -15,7 +15,7 @@ androidx-collection = "1.4.5"
compose = "1.9.4" compose = "1.9.4"
composeMultiplatform = "1.9.2-ez-001" composeMultiplatform = "1.9.2-ez-001"
junit = "4.13.2" junit = "4.13.2"
kotlin = "2.2.21-ez-001" kotlin = "2.2.21-ez-101"
kotlinx-coroutines = "1.8.0-KBA-001" kotlinx-coroutines = "1.8.0-KBA-001"
atomicFu = "0.23.2-KBA-001" atomicFu = "0.23.2-KBA-001"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment