樸實注音鍵盤新改動:將新酷音函式庫打包為 Android App Module (AAR)

1.9.50 版開始,樸實注音鍵盤新酷音函式庫 (libchewing) 原本以 Git submodule 嵌合進專案目錄結構的作法,改成分離為獨立的 Android App Module (AAR) 專案:libchewingAndroidAppModule,再引入此專案建置出的 .aar 模組檔。

初始動機是新酷音函式庫自 v0.8.0 開始,預設採用 Rust 版的程式碼來建置,樸實注音鍵盤這邊不想跟不上這個變革,這不是為做而做,初衷仍是為了 Rust 主打的 memory safety 特性,以及新語言較豐富的表現力。

目前新酷音函式庫仍保持著 C & Rust 雙軌並行相容,所以 libchewingAndroidAppModule 暫時仍是拿 C 語言實作版本來建置,然後嘗試轉換至 Rust 語言實作版本。

我預想這不是一件太容易的事。一來樸實注音鍵盤對於舊設備有「在能力範圍內盡力支援」的方針,所以至今仍至少支援 Android 6..0 (API Level 23);也因此樸實注音鍵盤為了已有些年代的設備,會盡力支援 Android(仍)支援的 4 種硬體平台架構:armeabi-v7a, arm64-v8a, x86, x86_64,而對應的 Rust 當前硬體平台架構支援程度 (tiers) 是略有紛歧的。

就努力看看,行不通的話,變通方法還是很多啦(大概)。


已發佈

分類:

作者:

標籤: