SlideShare a Scribd company logo
1 of 37
smartFXにおける 
Apache Cordova 
の活用について 
株式会社みんかぶ森田剛志
Who am I ? 
所属: 株式会社みんかぶ 
twitter: @takeshy 
github: https://github.com/takeshy 
qiita: http://qiita.com/takeshy 
みんかぶではプログラマを募集しています。 
JavaScriptが読み書きできれば、業務経験がなくて 
もOK! dev_recruitment@minkabu.co.jpまで
アジェンダ 
I. Apache Cordovaを導入した経緯と結果 
II. Apache Cordovaを使った開発について 
III. まとめ
I. smartFXでApache 
Cordovaを導入した経緯
smartFXの狙い(リリース前) 
• 24時間マーケットが開いていて、秒に数回も 
レートが更新されるFXに対して、どこでもサッと 
今の情報をチェックしたいというニーズがあるはず 
• SPAにより快適にページ遷移ができ、リアルタイム 
に表示が更新されるスマホ用のFX情報Webサイト 
を作ろう!! 
• Webだとインストールの必要もないし、SNSで簡単 
に拡散され大ヒットするはず。
SmartFX 
powerd by みんなの外為 
リアルタイムかつネイティ 
ブと変わらない操作性をも 
つ無料FX情報サイト2014 
年2月28日 
Debut!!
リリース後の辛い現実 
• 全然人が来ない。。 
• みんな直帰。。 
• リピートしてくれない。。
空いてるビルの下 
の階のフロア、こ 
れから人が増える 
から、今のうちに 
押さえちゃってっ 
て言ったのに。。
なぜ人が来ない? 
• 検索エンジンにひっかからない(SPAだし。。) 
• _escaped_fragment_ を指定して、ロボットに対し 
てはPhantom.jsを使って静的ページを返すようにし 
ても、スマホ用に極力文字をへらしていたり、そも 
そもアプリなのでキーワードをたくさん載せにくい 
。 
• あまりにも無名でSNSで広がらない。。
なぜみんな直帰? 
• 普通の人にとってSPAってなにそれ?状態 
• たとえ知っていたとしても次のページに遷移するま 
で知る由もない。 
• 初期ページ表示が遅い=サイトが重い。
なぜリピートしてくれない? 
• スマホの使用時間のほとんどはアプリ。 
• ブラウザで毎日訪れるサイトがある人自体かなり少 
ない。
アプリにしたら 
解決するんじゃ 
ない?
人が来ない問題に対して 
• "FX バーチャル”をWebで検索すれば69万6千件なの 
に対してApp Storeで検索すれば、たった10件 
• App Storeのランキングに載れば、優良な導線が 
無料で手に入る!!
みんな直帰問題に対して 
• ネイティブだと初期ロードに時間がかかるが、以降 
の遷移は素早いという感覚が当たり前。 
• ナビゲーションを常に固定することで、とりあえず 
色々な画面を見てもらえるのでは?
リピートしてくれない問題に対し 
て 
• アイコン化により容易にアクセス 
• push通知による誘導も可能
でもアプリにする 
って大変じゃない?
Yes!! 
Here We are!
Cordovaへの移行について 
• サイト全部だとアプリとしては複雑すぎるので、 
バーチャルトレード機能のみをアプリ化する。 
• もともとSPAだったので、コードはほぼそのまま流 
用できた。 
• プラグインも必要なものはすべてあったので、ネイ 
ティブコードを1行も触らずにすんだ。 
• 移行+ Push通知機能通知の実装が開発者1人で1週 
間でできた。 
そして・・・
2014年8月15日smartFX 
virtual trade リリース!
で、結果は?
リリース結果 
• バーチャルトレード大会に参加登録したユーザ数 
参加者が8倍に増加!! 
118 51 
422 
500 
375 
250 
125 
0 
← 8/15 リリース 
6月7 月8 月 
※参加登録をしなくても使えるので、インストー 
ルしたユーザはこの数倍 
PR Times -> マイナビニュース-> Gunosyまでリーチ!!
II.Apache Cordovaを 
使った開発について
Apache Cordovaってなんなのに対する私の 
認識 
• アプリ内のHTML内でアプリ内のcordova.jsを呼び出し、そのjs 
経由でネイティブの機能を呼び出せる(ローカルドメイン) 
• 外部とはAjaxもしくはWebsocket、JSONPで通信できる 
• 外部リンク経由等で外部のサイトを表示することもできるが、 
ネイティブの機能が使えず、ただのWebViewになってしまう。 
• アプリ内に画面ごとのHTMLを用意すれば、SPAでなくても画 
面遷移が可能だが、結局外部とはAjax通信が必要だし、画面ご 
とにjsやcssをパースすることを考えると、SPAで作ったほうが 
昨今のJSのフレームワークが使えるし有利。
開発環境 
• 開発ツールVim パッケージングする時だけ 
、EclipseとXCodeを立ち上げています 
• WebアプリサーバRails 
• 言語CoffeeScript 
• ライブラリBackbone.js Socket.IO CCChart ios-imagefile- 
megapixel OnsenUI
Apach Cordova開発時の注意 
• UIがガイドライン 
(https://developer.apple.com/jp/devcenter/ios/library/documentation/userexpe 
rience/conceptual/mobilehig/BasicsPart/BasicsPart.html)に則っていないと 
AppleからRejectされる。 
• 書籍を参考にCSS3で頑張る。 
• Onsen UIを使う。 
• Androidの場合、バックグラウンド処理がデフォルトで有効になっているの 
で、タイマーなどで定期的にポーリングする処理を行っていたりするとバッ 
テリ消費が大変なことになる 
• keepRunnningの設定をfalseにする
Apache Cordova開発での問題点 
• Webサーバーとのやり取りがAjaxに限定 
• cookieが使いものにならない 
• pushStateを使うとreloadがきかない 
• ブラウザで動いてもアプリだとエラーになるコード 
がある 
• 端末によって動作が違う
Apache Cordova開発での 
問題点に対する 
smartFXでの対応
Webサーバとのやり取りがAjaxに限定 
• SPAで作成。各AJAXのURLにホスト名を記載。 
CSRF用のtokenもAjaxで取得 
• 申請を待たずにアプリを更新するために、起動時に 
SPA本体のjsのURLが書かれたjsをサーバから毎回 
取得し、記述されたURLのjsを読み込む 
• Social Login等外部サイトを呼ぶ必要がある場合は 
、InAppBrowserというアプリ内ブラウザを使う
cookieが使いものにならない 
• LocalStorageを使う。 
• ただし、Webサービスでも提供していた場合、クラ 
イアントのブラウザがシークレットモードの場合は 
LocalStorageがエラーになるに注意。
pushStateを使うとreloadがきかない 
• 起動時にpushStateを使う前のurlを保存しておき、 
reloadしたい場面では保存したURLを開く
ブラウザで動いてもアプリだとエラーにな 
るコードがある 
• iOS6以上のiOS Simulator、Android 4.4以上だと 
WebViewも外部からdebugできるので頑張る。 
• iOSのWebViewの場合、初期化処理の中でそのオブ 
ジェクトのprototype関数を呼び出すとエラーになっ 
た。
端末によって動作が違う 
• 頑張る。特にAndroid4.0はCanvasのバグが激しい。 
canvasに書き込みつつも、canvasタグ自体は 
hiddenにして、toDataURL()でimageタグに対して 
出力している。 
• Androidの場合、crosswalkというサードパーティの 
pluginを使えばWebView自体がアプリに組込まれる 
ので最新の技術+端末ごとの差異がなくなり解決す 
るはず。。
III.まとめ
• ネイティブの機能を使わなくてもアプリ化するメリ 
ットは大きい 
• Apache Cordovaを使えば、Object-CやJavaを1行も 
書いたことがなくても、まともなアプリが作れる 
• 最近の端末(iPhone5以降)だとネイティブと遜色ない 
と言えるレベルで動作する(smartfx.jp splax.net) 
• SPAは習得するのにちょっと慣れが必要だが、必須 
の技術になりつつあるので、ぜひ覚えよう。 
保守性もUpするよ!!
ご静聴 
ありがとうございました

More Related Content

What's hot

Monacaでつくるハイブリッドアプリ
MonacaでつくるハイブリッドアプリMonacaでつくるハイブリッドアプリ
MonacaでつくるハイブリッドアプリMonaca
 
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会Monaca
 
noteをAngularJSで構築した話
noteをAngularJSで構築した話noteをAngularJSで構築した話
noteをAngularJSで構築した話Kon Yuichi
 
Directiveで実現できたこと
Directiveで実現できたことDirectiveで実現できたこと
Directiveで実現できたことKon Yuichi
 
Cordovaの最近ホットな話題と地雷をまとめて紹介
Cordovaの最近ホットな話題と地雷をまとめて紹介Cordovaの最近ホットな話題と地雷をまとめて紹介
Cordovaの最近ホットな話題と地雷をまとめて紹介アシアル株式会社
 
Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅
Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅
Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅アシアル株式会社
 
WEBがネイティブに勝つために - kaumoCTOMeetup(いっちマン)
WEBがネイティブに勝つために - kaumoCTOMeetup(いっちマン)WEBがネイティブに勝つために - kaumoCTOMeetup(いっちマン)
WEBがネイティブに勝つために - kaumoCTOMeetup(いっちマン)icchiman
 
HTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティスHTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティスアシアル株式会社
 
AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化Toshio Ehara
 
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについてネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについてKazuaki Hidaka
 
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリAngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリアシアル株式会社
 
フロントエンド初学者がSPAに手を出してみた
フロントエンド初学者がSPAに手を出してみたフロントエンド初学者がSPAに手を出してみた
フロントエンド初学者がSPAに手を出してみたKei Yagi
 
スマホアプリ開発者のためのWeb api開発入門の入門
スマホアプリ開発者のためのWeb api開発入門の入門スマホアプリ開発者のためのWeb api開発入門の入門
スマホアプリ開発者のためのWeb api開発入門の入門Kenyu Miura
 
今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしました今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしましたMitsuru Ogawa
 
Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座Monaca
 
はやわかりHTML5ハイブリッドアプリ開発事情
はやわかりHTML5ハイブリッドアプリ開発事情 はやわかりHTML5ハイブリッドアプリ開発事情
はやわかりHTML5ハイブリッドアプリ開発事情 Monaca
 
10分でわかるOpenAPI V3
10分でわかるOpenAPI V310分でわかるOpenAPI V3
10分でわかるOpenAPI V3Kazuchika Sekiya
 

What's hot (20)

Monacaでつくるハイブリッドアプリ
MonacaでつくるハイブリッドアプリMonacaでつくるハイブリッドアプリ
Monacaでつくるハイブリッドアプリ
 
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
 
noteをAngularJSで構築した話
noteをAngularJSで構築した話noteをAngularJSで構築した話
noteをAngularJSで構築した話
 
Directiveで実現できたこと
Directiveで実現できたことDirectiveで実現できたこと
Directiveで実現できたこと
 
Cordovaの最近ホットな話題と地雷をまとめて紹介
Cordovaの最近ホットな話題と地雷をまとめて紹介Cordovaの最近ホットな話題と地雷をまとめて紹介
Cordovaの最近ホットな話題と地雷をまとめて紹介
 
Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅
Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅
Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅
 
Onsen UI 2.0とUIライブラリの未来
Onsen UI 2.0とUIライブラリの未来Onsen UI 2.0とUIライブラリの未来
Onsen UI 2.0とUIライブラリの未来
 
WEBがネイティブに勝つために - kaumoCTOMeetup(いっちマン)
WEBがネイティブに勝つために - kaumoCTOMeetup(いっちマン)WEBがネイティブに勝つために - kaumoCTOMeetup(いっちマン)
WEBがネイティブに勝つために - kaumoCTOMeetup(いっちマン)
 
HTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティスHTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティス
 
AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化
 
Onsen UIが目指すもの
Onsen UIが目指すものOnsen UIが目指すもの
Onsen UIが目指すもの
 
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについてネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
 
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリAngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
 
Angular2
Angular2Angular2
Angular2
 
フロントエンド初学者がSPAに手を出してみた
フロントエンド初学者がSPAに手を出してみたフロントエンド初学者がSPAに手を出してみた
フロントエンド初学者がSPAに手を出してみた
 
スマホアプリ開発者のためのWeb api開発入門の入門
スマホアプリ開発者のためのWeb api開発入門の入門スマホアプリ開発者のためのWeb api開発入門の入門
スマホアプリ開発者のためのWeb api開発入門の入門
 
今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしました今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしました
 
Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座
 
はやわかりHTML5ハイブリッドアプリ開発事情
はやわかりHTML5ハイブリッドアプリ開発事情 はやわかりHTML5ハイブリッドアプリ開発事情
はやわかりHTML5ハイブリッドアプリ開発事情
 
10分でわかるOpenAPI V3
10分でわかるOpenAPI V310分でわかるOpenAPI V3
10分でわかるOpenAPI V3
 

Similar to smartFXにおけるApache Cordovaの活用について

楽ちんユーザー認証付Spa
楽ちんユーザー認証付Spa楽ちんユーザー認証付Spa
楽ちんユーザー認証付SpaTakahiro Tsuchiya
 
HTML5時代のwebクリエイターに必要なこと
HTML5時代のwebクリエイターに必要なことHTML5時代のwebクリエイターに必要なこと
HTML5時代のwebクリエイターに必要なことMasakazu Muraoka
 
2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordovamiso- soup3
 
OpenWhisk - Docker action で MeCab を動かす
OpenWhisk - Docker action で MeCab を動かすOpenWhisk - Docker action で MeCab を動かす
OpenWhisk - Docker action で MeCab を動かすKUNITO Atsunori
 
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編Masayuki KaToH
 
Service workerとwebプッシュ通知
Service workerとwebプッシュ通知Service workerとwebプッシュ通知
Service workerとwebプッシュ通知zaru sakuraba
 
HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編Monaca
 
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフラインWebフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフラインShumpei Shiraishi
 
Sales Force Episode VI ~ Return of Ajax Toolkit ~
Sales Force Episode VI ~ Return of Ajax Toolkit ~Sales Force Episode VI ~ Return of Ajax Toolkit ~
Sales Force Episode VI ~ Return of Ajax Toolkit ~Shinichi Tomita
 
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラム
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラムDropbox APIなどを使って制作を効率化しよう@関西オープンフォーラム
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラムMasayuki Abe
 
HTML5とWeb開発に関する最新動向
HTML5とWeb開発に関する最新動向HTML5とWeb開発に関する最新動向
HTML5とWeb開発に関する最新動向Shumpei Shiraishi
 
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオンJavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオンKazuhiro Yoshimoto
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshopYoichiro Sakurai
 
WebSocket + Node.jsでつくるチャットアプリ
WebSocket + Node.jsでつくるチャットアプリWebSocket + Node.jsでつくるチャットアプリ
WebSocket + Node.jsでつくるチャットアプリKohei Kadowaki
 
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編Masayuki KaToH
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化Takashi Okamoto
 
S14 t3 yosuke_yamashita
S14 t3 yosuke_yamashitaS14 t3 yosuke_yamashita
S14 t3 yosuke_yamashitaTakeshi Akutsu
 

Similar to smartFXにおけるApache Cordovaの活用について (20)

楽ちんユーザー認証付Spa
楽ちんユーザー認証付Spa楽ちんユーザー認証付Spa
楽ちんユーザー認証付Spa
 
HTML5時代のwebクリエイターに必要なこと
HTML5時代のwebクリエイターに必要なことHTML5時代のwebクリエイターに必要なこと
HTML5時代のwebクリエイターに必要なこと
 
2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova
 
OpenWhisk - Docker action で MeCab を動かす
OpenWhisk - Docker action で MeCab を動かすOpenWhisk - Docker action で MeCab を動かす
OpenWhisk - Docker action で MeCab を動かす
 
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
 
Service workerとwebプッシュ通知
Service workerとwebプッシュ通知Service workerとwebプッシュ通知
Service workerとwebプッシュ通知
 
HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編
 
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフラインWebフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
 
Sales Force Episode VI ~ Return of Ajax Toolkit ~
Sales Force Episode VI ~ Return of Ajax Toolkit ~Sales Force Episode VI ~ Return of Ajax Toolkit ~
Sales Force Episode VI ~ Return of Ajax Toolkit ~
 
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラム
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラムDropbox APIなどを使って制作を効率化しよう@関西オープンフォーラム
Dropbox APIなどを使って制作を効率化しよう@関西オープンフォーラム
 
HTML5とWeb開発に関する最新動向
HTML5とWeb開発に関する最新動向HTML5とWeb開発に関する最新動向
HTML5とWeb開発に関する最新動向
 
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオンJavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
 
WebSocket + Node.jsでつくるチャットアプリ
WebSocket + Node.jsでつくるチャットアプリWebSocket + Node.jsでつくるチャットアプリ
WebSocket + Node.jsでつくるチャットアプリ
 
SocketStream入門
SocketStream入門SocketStream入門
SocketStream入門
 
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編
俺とサーバレスアーキテクチャ Aws cognito + s3 + ses + lambda編
 
Capacitor
CapacitorCapacitor
Capacitor
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化
 
S14 t3 yosuke_yamashita
S14 t3 yosuke_yamashitaS14 t3 yosuke_yamashita
S14 t3 yosuke_yamashita
 
My cordovaprojectstory
My cordovaprojectstoryMy cordovaprojectstory
My cordovaprojectstory
 

smartFXにおけるApache Cordovaの活用について