マジックアワー
最近Maxima on Androidの更新が止まっています。
数式の入力がサクサクできないと実用性に乏しい、という本質的な欠陥を除去できないからなのですが、、、
そのほかにもいくつかの理由があり、更新をするには気合いが必要、という状況なのです。
- Androidのバージョンが7.0 (最新は7.0.1のようですね)なのですが、色々と変わっており、そのままでは動きません。
- 具体的には、webviewにアクセスできるスレッドがUIスレッドだけに制限されてしまい、そのせいで落ちます(こいつの修正は簡単そうですが)。
- またJava.Util.Processクラスの動作が変更されており、MaximaとJavaの通信がうまくできません(こいつは大変そうです)。
- さらにnative binaryが位置独立であることに加えて、不要なテキスト領域が完全に削除されていなければ実行しない、という制約が加わり、従来同梱していたMaximaのx86バイナリが動作しません(まだよくわかっていません)。
- Androidのバージョン以外にも問題が山積みです。
- 例えば、Eclipseのサポートが終了したため、Android Studioに移行する必要があります(ようやくコンパイル&実行ができるようになりました)。
- そういえば、ASに移行すると署名鍵はどうなるのか、まだ調べていません。
- Android Studioへのインポート時にソースツリー構造が変わってしまいました。Githubへのアップロードは、、、どうしたら良いのでしょうか(これは本気で面倒くさい)。
- Maxima, gnuplot, qepcadをAndroid機器向けにx86, ARMアーキテクチャにクロスコンパイルする環境も再整備が必要です。(ECLの最新版がAndroid機器向けクロスコンパイル環境をサポートしたため、ここはめどは立ちそうです)。
新年を迎えて、年に1度はアップデートしよう、と誓ってみて、早速実行に移そうと調査&トライをしてみたところ、問題山積であることがわかった次第です。1月17日にしてもう新年の誓いを諦めるべきなのでしょうか。