Android 用青空文庫ビューア『読書尚友』有償版を本日公開した。
https://play.google.com/store/apps/details?id=info.ebstudio.bookviewer.pro&hl=ja
free版との違いは、広告の非表示、簡易ePub3対応、画像zip対応、複数本棚である。
画像zip対応について
ここで画像zipと言っているのは、スキャンした画像データを固めたzipのこと(いわゆる自炊)である。
画像zip対応は、free版でもサポートしようと思っていたが、広告モジュールのGoogle AdMobライブラリと、antのzipライブラリ(org.apache.tools.zip.*)の相性が悪く、共存できなかったため、やむなく有償版だけのサポートになった。
もう少し細かく説明を試みる。
javaには標準のzipライブラリjava.util.zip.があるが、これはファイル名の文字コードがUTF-8に固定なので、PCのShift_JISのファイル名をzipしたものは扱えない。
antで提供されているorg.apache.tools.zipは、独自実装されており、ファイル名の文字コードを指定できる上、性能も若干高い。org.apache.tools.zipは、antの一部なので、ant.jar を取り込めば使用できる。
ところが、ant.jarとAdMobライブラリを同時に入れると、なぜかアプリが起動できなかった。javaの深い知識がないので、ここでFree版にorg.apache.tools.zipを使うのは諦めた。
あと未実装の機能で大きいのは任意範囲のマーカーがある。利用していただきつつ、継続的に機能追加をはかっていきたい。
P.S. この項は私の勘違いで、org.apache.tools.zipとGoogle AdMobライブラリを共存できることがわかったので、Free版も画像zipをサポートした(2013/12/19)。