【cordova】crosswalk導入の際に詰まったところとapkのサイズ
の
Upgrading Crosswalk in a migrated project
の手順を実行することで、自分のcorodovaプロジェクトに、crosswalkを入れ込む事が出来た。
(※crosswalkは、cordova/ARM版を入れた。x86(intel製)の端末も最近は増えてきているようですが、ARMの方が圧倒的シェアのようなので…)
「6. Build the projects in this order:」
の、3の手順では、例えば自分の環境では、
cp -a /Users/suzukikuniaki/Downloads/crosswalk-cordova-11.40.277.7-arm/framework/* platforms/android/CordovaLib/
のように指定した。
同様に4では、
cp -a /Users/suzukikuniaki/Downloads/crosswalk-cordova-11.40.277.7-arm/VERSION platforms/android/
のように指定した。
(※いずれも、DLフォルダにそのまま落としてきた物が入っているという想定)
また、6の所では、
「android update project --subprojects --path ./ --target android-21」
というようにする必要があった。
(パスの記述を修正、ダブルクォーテーション要らない)
(また、antが入っていない場合、こちらもまた、どこかに置いてそれをパスに追加する必要ありだった。自分はapache-ant-1.9.4を落としてきて、.bash_profileにパスを入れた)
ただ入れてみたところ、設定から見るアプリの容量は5MB→58MBに…
の
How big is the Crosswalk runtime, and how will it affect my application's size?
を見る限りでは、apkにすれば20MB程度の増加で済むとのことだったので、
早速、
cordova build --release android
でapkで出してみたところ、23MBでした…!
このくらいのサイズであれば、何とか使えそうですね。
動作させて見たところ、元々、遅めの端末を持っていないので、
速度面の改善は正直わからなかったのですが、
ちょっと位置がずれているとか、そういう問題は見えなくなっていました。
※Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅
のスライド21によると、4.4以降では、むしろcrosswalkの方が若干遅い場合もある
(標準で動作するのが旧webview→chromium製の物になったためと思われる)
とのことなので、最終的に導入するかは、色々動かしてからにしたいと思います。
※その後ストアに出してみると、ローカライズはしていないのに、多数の言語が登録されているという現象が…これは、
platforms/android/CordovaLib/xwalk_core_library/res
以下にある、
values-am、values-ar…など、「values」以外のローカライズフォルダを全て削除してからapk化することで、きちんと、「ローカライズ デフォルトの言語のみ」になった。