爆速の HTML5 クロス・プラットフォーム CocoonJS (Japanese)
CocoonJS は Ludei 社が提供する爆速の「HTML5 クロス・プラットフォーム」です。
HTML5 クロス・プラットフォームは他にも色々ありますが、CocoonJS は PhoneGap に似ています。 HTML / CSS / JS をネイティブコードに変換するのでは無く、そのまま実行環境で動かす仕組みです。
CocoonJS vs PhoneGap
HTML / CSS / JS をそのまま使える点では同じですが、 PhoneGap がシステムの WebView を使うのに対し、CocoonJS は独自の実行環境を持っています。
システム WebView はとにかくパフォーマンスが悪く、OS や機種依存により挙動が違うなどの問題がありますが、 CocoonJS は独自の実行環境で動作するため OS や機種依存の問題を解消し、 システム WebView に比べて圧倒的に早いです。
(Comparing CocoonJS and PhoneGap - Ludei サイトより)
CocoonJS が素敵な理由
CocoonJS が素敵な理由をいくつか挙げてみます。
- 爆速の HTML5 実行環境
- 今までの WEB 開発フレームワークやライブラリーをそのまま使える
- 簡単に実機でテストやデバッグができる
- 様々のプラットフォームに簡単に配布できる
- アプリ運用に関わる便利なツールや拡張機能が備わっている
爆速の HTML5 実行環境
CocoonJS では現在異なる3つの実行環境を提供しており、用途に合わせて最適な実行環境を選ぶ事ができます。
Canvas+
HTML5 Canvas アプリやゲームに最適な実行環境です。 Canvas 描画に特化された Canvas+ の JavaScript 実行速度は、他のブラウザーやシステム WebView に比べて 10倍は早いと言われています。
iOS 5, Android 2.3 以上であれば WebGL もサポートされるので更に爆速です!
WebView+
Chromium で作られた独自の WebView として、主に Android 向けに開発された実行環境です。 Chromium を元にしているのでシステム WebView より端然早く、機種や OS バージョン毎の差異を気にしなくて済みます。 (Android 4 以上)
iOS 8 以前の iOS では WebView+ はサポートされてませんでしたが、 iOS 8 からは WKWebView を基盤にした WebView+ がサポートされる様になりました。
Apache Cordova
上記の「CocoonJS vs PhoneGap」比較テーブルの一番下に「Cordova extensions」と書いている様に、 CocoonJS は Apache Cordova を正式にサポートしていて、Cordova の無数のプラグインと CocoonJS を組み合わせる事が可能です。
現在 Cordova に対応した CocoonJS 実行環境は WebView+ のみで、Canvas+ は対応予定になっています。
今までの WEB 開発フレームワークやライブラリーをそのまま使える
CocoonJS では HTML/CSS/JS がそのまま実行されるので、既存の WEB 開発フレームワークやライブラリーをそのまま使えます。
以下は例として一部の有名なフレームワークやライブラリーを挙げていますが、 あくまでも例なのでここに乗っていないライブラリーもほとんどそのまま使えます。(three.js など)
(使えるライブラリーの例 - Ludei サイトより)
簡単に実機でテストやデバッグができる
CocoonJS 用に開発してアプリやゲームを、実際に実機でのテスト・デバッグが簡単に行える専用のアプリ「CocoonJS Launcher」が提供されています。
CocoonJS Launcher を使えば自分が作成したコードを面倒な手順無しで簡単に実機確認ができます。
ソースコードをZIPファイルに圧縮して端末のファイルシステムに転送して実行、 またはローカルホストや外部サイトのURLを指定して実行する事も可能です。
様々のプラットフォームに簡単に配布できる
CocoonJS Cloud と言うサービスも提供しており、 iOS, Android をはじめ様々なプラットフォーム向けに配布可能なアプリを Cloud サービスから簡単にコンパイルできます。
配布した後は分析やマネタイズに必要な各種設定をダッシュボードで管理できる便利なサービスです。
アプリ運用に関わる便利なツールや拡張機能が備わっている
拡張機能
CocoonJS には JavaScript から制御できる様々なネイティブ拡張機能が用意されています。
- アプリ内広告
- アプリ内課金
- Google プレイゲーム連携
- iOS ゲームセンター連携
- Facebook 連携
- プッシュ通知
- デバイスアクセス(カメラ、モーションセンサー …)
- ゲームパッド対応
- マルチチャンネルのサウンド再生
- などなど(参照:Plugins overview - Ludei Support)
分析サービス
CocoonJS は独自の分析サービスを提供しており、 CocoonJS Cloud サービスのダッシュボードからアクセスできます。
ライブ・アップデート
CocoonJS で開発したアプリのコンテンツは、アプリを再配布しなくても CocoonJS Cloud サービスの管理画面から簡単にアップデートができます。
まとめ
CocoonJS は日本国内ではまだあまり知られておらず、日本語ドキュメントや関連ブログ記事も少ないです。(ほぼ無い)
今回は CocoonJS の概要だけずらっと並べただけですが、使い方など詳しい内容はそれぞれ別の記事でまとめて行きます。
Comments