真机(0.8.48 / reader 0.1.1 基线,同机同字库 ztest 实测): - 从阅读页返回书架:3435ms(3259–3531)→ 33ms(24–54)。根因是 shelf_on_enter 无条件 scan_books():exFAT 全量扫描 434 目录 = 3.1s。改为进程内缓存(首次进入才扫,顶栏 「刷新」强制重扫);truncated/depth_skipped 提示语义不变(首次扫描时算好并保留)。 行为变化:新进 Books/ 的书、刚读完那本书的「最近阅读置顶」需点一次「刷新」才更新。 - 书架滑动每步(62px,含 widget_draw + flush):51.9–56.2ms → 19.3–19.9ms。 行数 > 200 时 meow_listview_set_container(0)(扁平行),≤200 行仍用 MD3 圆角卡; 圆角卡走 meow_gfx_fill_round 逐像素 rr_inside(464×54 一张 3.8–6.4ms ×11 行)。 - 首次进书架仍需扫一次(3497ms,含 3157ms 扫描);595 本全可见、format/folder 分组不变。 另加 test/shelf_bench_ondev.c(真机耗时基准,不进 mpk)与 build_reader.sh 的编译步骤; app.json 0.1.1/2 → 0.1.2/3。未做(按塔砍范围):字体路径记忆化、首屏只渲染当前页、 自绘行、mtime 失效检测。
19 lines
405 B
Plaintext
19 lines
405 B
Plaintext
# os.meow.reader 构建产物(不入仓)
|
|
/vendor/
|
|
/reader
|
|
/os.meow.reader.mpk
|
|
/test/test_reader_core_host
|
|
/test/loaders_smoke_host
|
|
/test/seg_smoke_host
|
|
/test/chapter_smoke_host
|
|
/test/shelf_group_smoke_host
|
|
/test/shelf_scan_bench_host
|
|
/test/shelf_scan_bench_mipsel
|
|
/test/rdft_smoke_mipsel
|
|
/test/book_smoke_mipsel
|
|
/test/formats_smoke_mipsel
|
|
/test/mem_account_host
|
|
*.o
|
|
*.a
|
|
/test/shelf_bench_ondev_mipsel
|