Release/v1.6.3#1381
Open
Tri250 wants to merge 35 commits into
Open
Conversation
- 权限:Android 13+ 细粒度媒体权限、EXIF GPS、MANAGE_EXTERNAL_STORAGE、Intent Filters - AI引擎:5个ONNX模型强制CPU EP、移除Android无用的register_exit_handler - 崩溃恢复:独立 .android_crash_flag 检测与保守设置回退 - 安全:CSP策略、network_security_config.xml (强制HTTPS)、ProGuard规则 - UI/UX:Android WebView触摸优化、Edge-to-Edge沉浸式 - 性能:minSdk 26、R8 shrinkResources、NDK ABI过滤、Rayon线程池限制 - 新增:PermissionHelper.java、ExportForegroundService.java、android_permissions.rs - 操作链路:MainActivity Intent转发、权限结果回调、启动时自动权限检查
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
- P1-C8: 新增EditHistoryPanel.tsx前端组件,支持分支历史树可视化 - P3: 新增OnboardingManager.kt新手引导管理器 - P3: 新增FoldableAdapter.kt折叠屏/平板/横屏适配器 - 集成到MainActivity: 引导页检测、设备状态通知、折叠屏适配
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
- 新增 TauriActivity.kt 基类(AppCompatActivity 子类),提供 Tauri 2.x Android 生命周期方法 - 修复 MainActivity.kt:移除与父类冲突的 webView 声明,添加 onSwipeLeft/onSwipeRight 实现 - 修复 ComparisonViewManager.kt:context 参数改为属性 - 修复 FoldableAdapter.kt:移除不存在的 android.window.ScreenArea 导入,修复 currentWindowMetrics API - 修复 ImagePickerHelper.kt:Activity 改为 ComponentActivity,修正 ActivityResultLauncher 泛型 - 修复 StorageHelper.kt:逻辑非运算符优先级错误 - Android APK 构建成功:5 个 ABI (arm64/arm/x86_64/x86/universal)
关键修复: - CRITICAL: 添加 Splash 主题回退(values/themes.xml),修复 API 26-30 启动崩溃 - CRITICAL: 添加 16KB 页大小对齐(CMake + Cargo.toml),Android 15+ 必需 - CRITICAL: 修复 fitsSystemWindows 与 enableEdgeToEdge 冲突,改用 WindowInsetsCompat - HIGH: ExportForegroundService 使用 ContextCompat.startForegroundService (Android 14+) - HIGH: PermissionHelper 移除废弃的 startActivityForResult - HIGH: StorageHelper 使用 getExternalFilesDir 替代废弃的 getExternalStorageDirectory - HIGH: 移除 ThumbnailAccelerator 的 RenderScript 死代码 (Android 14+ 已移除) - HIGH: gpu_processing.rs panic 改为优雅错误处理,避免 Android Surface 失效时崩溃 - MEDIUM: gradle.properties 添加 R8 fullMode、compileSdk 36 抑制、并行/缓存优化
- 添加 System.loadLibrary("rapidraw_lib") 启动 Tauri 运行时
- 修复 onRestoreInstanceState 调用错误的 super 方法
- BuildTask.groovy: 检测jniLibs预编译.so,存在则跳过tauri CLI构建 - tauri.build.gradle.kts: 修正前端dist路径为../../../../dist
根本原因: 项目缺少Tauri移动端架构所需的核心Kotlin类, 导致WebView无法通过JNI正确创建和加载。 修复内容: - 添加 WryActivity.kt - Tauri官方Activity基类(含setWebView、生命周期回调) - 添加 RustWebView.kt - WebView子类(含evalScript、IPC支持) - 添加 RustWebViewClient.kt - WebViewClient(自定义协议、资源加载) - 添加 RustWebChromeClient.kt - WebChromeClient(权限、文件选择) - 添加 Ipc.kt - JS与Rust之间的IPC桥接 - 添加 Rust.kt - JNI绑定 + System.loadLibrary - 添加 Logger.kt - 日志工具类 - MainActivity: 继承自WryActivity而非TauriActivity - PermissionHelper.java: 合并wry版本的权限检查方法 - build.gradle.kts: 添加lifecycle依赖 - 删除空壳 TauriActivity.kt 兼容安卓15-16系统。
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
添加 jackson-databind/core/annotations 2.15.3、kotlinx-coroutines-android 1.6.4、 kotlinx-coroutines-core-jvm 1.7.3 的本地 Maven 仓库缓存, 用于在网络受限环境中支持 Gradle --offline 构建模式。
- Update version to 1.6.0 in tauri.conf.json, package.json, tauri.properties - Configure Gradle mirrors (Aliyun + dl.google.com) for Chinese network - Configure Cargo mirror (USTC) for Chinese network - Add Android signing keystore for release builds - Update ProGuard rules with Tauri/JNI/WebView keep rules - Harden CSP by removing localhost from connect-src for production - Migrate .cargo/config to .cargo/config.toml - Add Android cross-compile linker config and 16KB page alignment - Move Android rustflags from Cargo.toml to .cargo/config.toml
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
… Gradle 502 Bad Gateway)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Type of Change
Changes Made
Screenshots/Videos
Testing
Test Configuration:
Checklist
Additional Notes
AI Disclaimer:
Please state the involvement of AI in this PR: