docs: record STEP-057C Android JNI fix
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
This commit is contained in:
22
docs/报告/STEP-057C_Android_JNI数组读取编译修正_ChatGPT完成报告_v1.md
Normal file
22
docs/报告/STEP-057C_Android_JNI数组读取编译修正_ChatGPT完成报告_v1.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# STEP-057C Android JNI 数组读取编译修正完成报告
|
||||
|
||||
## 结论
|
||||
|
||||
- 状态:IMPLEMENTED / WAITING_ANDROID_REBUILD
|
||||
- 基线:`369957e9640a56f7204032e5c30ab9ad169cea01`
|
||||
- 功能提交:`4f76245533817751f4e24f76e47e856c35fb23c7`
|
||||
- 提交说明:`fix: correct Android JNI float array reads`
|
||||
- 推送:成功,`origin/particle/main`
|
||||
|
||||
## 修正内容
|
||||
|
||||
Android x86_64 CMake 编译在 `native_map_view.cpp` 的四处 `jni::GetArrayRegion` 调用失败。参数类型为 `jni::Array<jfloat>` wrapper,当前 jni.hpp 的 5 参数 `GetArrayRegion` 只接受底层 `jarray<T>&`。
|
||||
|
||||
已改为 wrapper 自带的 `GetRegion()`:particle/trail 使用 `std::array<float,4>`,speeds/rgba 使用 `std::vector<float>`。仅修改 `platform/android/MapLibreAndroid/src/cpp/native_map_view.cpp`,未触碰 STEP-057B 状态机、renderer、shader、WeatherColor、timestamp 或 Core 生命周期。
|
||||
|
||||
## 验证
|
||||
|
||||
- `git diff --check`:PASS
|
||||
- 已确认写法与当前 jni.hpp `Array::GetRegion()` 契约一致
|
||||
- 未执行 Android Gradle、APK、ADB、设备测试或 Jest
|
||||
- 下一步由用户手工重新执行 Android OpenGL Debug 构建
|
||||
@@ -469,3 +469,9 @@ WeatherColorLayer 的 `ParticleGpuValidationUBO` designated initializer 补齐 `
|
||||
- 普通 field rejection 与 facade/runtime failure 分离:Core 保留有效 timeline 时,READY/WAITING 状态不被坏提交改成 ERROR;空 metadata/payload 同样只拒绝本次提交。
|
||||
- `REJECTED_SOURCE_MODE`/`UNKNOWN` 才进入 ERROR;ERROR + enable(true) 返回 REJECTED 并保持 ERROR;READY/WAITING enable 保持幂等,DISABLED enable 成功后等待新 fields。
|
||||
- 扩展 `WeatherRuntimeStateTest`,覆盖 static state transition 与 Mockito public control flow;未执行 Android Gradle、设备测试或 Jest。
|
||||
|
||||
## 2026-09-07 — STEP-057C Android JNI 数组读取编译修正
|
||||
|
||||
- Android x86_64 CMake 编译发现 `jni::Array<jfloat>` 误用底层 5 参数 `jni::GetArrayRegion`,导致 `native_map_view.cpp` 四处编译失败。
|
||||
- 已改为 `jni::Array::GetRegion()`,只修正 particle/trail 与 WeatherColor stops 的数组读取,不改变业务语义或渲染生命周期。
|
||||
- 功能提交:`4f76245533817751f4e24f76e47e856c35fb23c7`;Android Gradle/设备验证由用户重新执行。
|
||||
|
||||
Reference in New Issue
Block a user