【cordova】crosswalk導入の際に詰まったところとapkのサイズ

 

The Crosswalk Project

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に…

The Crosswalk Project

How big is the Crosswalk runtime, and how will it affect my application's size?

を見る限りでは、apkにすれば20MB程度の増加で済むとのことだったので、

早速、

cordova build --release android

でapkで出してみたところ、23MBでした…!

このくらいのサイズであれば、何とか使えそうですね。

 

動作させて見たところ、元々、遅めの端末を持っていないので、

速度面の改善は正直わからなかったのですが、

iOS/android向けアプリのhtmlでありがち?な、

ちょっと位置がずれているとか、そういう問題は見えなくなっていました。

 

Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅

のスライド21によると、4.4以降では、むしろcrosswalkの方が若干遅い場合もある

(標準で動作するのが旧webview→chromium製の物になったためと思われる)

とのことなので、最終的に導入するかは、色々動かしてからにしたいと思います。

 

※その後ストアに出してみると、ローカライズはしていないのに、多数の言語が登録されているという現象が…これは、

platforms/android/CordovaLib/xwalk_core_library/res

以下にある、

values-am、values-ar…など、「values」以外のローカライズフォルダを全て削除してからapk化することで、きちんと、「ローカライズ デフォルトの言語のみ」になった。