agent-Specialization/android-webview-app/app/build.gradle.kts
JOJO 6a5ba2d95e fix(android): 下载改为应用内下载+系统分享sheet
- 移除 DownloadManager,改用 HttpURLConnection 下载到应用私有目录

- 通过 FileProvider 生成 content URI,调用 ACTION_SEND 弹出系统分享面板

- 下载请求携带 WebView Cookie,保证鉴权

- 版本号 1.0.40 (versionCode 42)
2026-06-24 16:51:20 +08:00

77 lines
2.4 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
}
fun resolveConfig(name: String): String? {
return (project.findProperty(name) as String?)?.takeIf { it.isNotBlank() }
?: System.getenv(name)?.takeIf { it.isNotBlank() }
}
android {
namespace = "com.cyjai.agent"
compileSdk = 35
defaultConfig {
applicationId = "com.cyjai.agent"
minSdk = 24
targetSdk = 35
versionCode = 42
versionName = "1.0.40"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
signingConfigs {
create("release") {
val storeFilePath = resolveConfig("ANDROID_KEYSTORE_PATH")
val storePass = resolveConfig("ANDROID_KEYSTORE_PASSWORD")
val keyAliasValue = resolveConfig("ANDROID_KEY_ALIAS")
val keyPass = resolveConfig("ANDROID_KEY_PASSWORD")
if (!storeFilePath.isNullOrBlank()) {
storeFile = file(storeFilePath)
}
storePassword = storePass
keyAlias = keyAliasValue
keyPassword = keyPass
}
}
buildTypes {
release {
isMinifyEnabled = false
signingConfig = signingConfigs.getByName("release")
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = "17"
}
}
dependencies {
implementation("androidx.core:core-ktx:1.13.1")
implementation("androidx.appcompat:appcompat:1.7.0")
implementation("com.google.android.material:material:1.12.0")
implementation("androidx.activity:activity-ktx:1.9.2")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.0")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1")
// PDF 预览(不依赖浏览器)
implementation("com.github.mhiew:android-pdf-viewer:3.2.0-beta.3")
// sherpa-onnx 语音识别库(需手动下载 AAR 放到 app/libs/
// 下载地址https://huggingface.co/csukuangfj/sherpa-onnx-libs/tree/main/android/aar
// 下载最新 sherpa-onnx-*.aar 放到 app/libs/ 目录即可
implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.aar"))))
}