ITエンタメ通信

Vol.085【 Androidハイブリッドアプリ開発を考える】ITエンタメ通信


カテゴリー: 2016年04月20日
◇◆━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◆◇
ITエンタメ通信  Vol.085    2016年4月20日(水)
  -- インターネットで
      エンタメ系サービスを提供されている皆様の為のメルマガ --
◆◇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◇◆
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ Androidハイブリッドアプリ開発を考える      (文中敬称略)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


■ ハイブリッドアプリ開発
----------------------------------------------------------------------

iOS/Android両対応のアプリをWeb技術で開発できる手法をハイブリッドアプリ
開発といいます。
一時期は、お客様の方からハイブリッドアプリでという要望も多かったのです
が、最近では次のような経験をされたのか、かつて程の盛り上がりはなくなっ
ている感があります。

- クオリティやパフォーマンスがネイティブアプリに及ばない
- Android(特に4.4未満)では、WebViewの端末/OS依存問題が多く発生し、開発
が思ったほど容易ではない

しかし、適切なケースでハイブリッドアプリを選択することで、ハイブリッド
アプリは工期短縮などの効果があり、いまでも一定の需要があります。

採用ケース:
iOS版はSafariで提供、Android版はアプリで提供する形態を取っている、dキ
ッズやauスマートパスといったようなプラットフォームでアプリを提供する場
合

本稿では、Androidにおけるハイブリッドアプリの開発の問題点と解決策を考
えます。


■ 問題点1:Android4~4.4でWebViewの実装の差の大きさ
----------------------------------------------------------------------

Android4~4.4のWebViewで実装の差が大きいため、実装する上で下記の問題が
あります。

- 使えるHTML5 APIに差がある
- JS/CSSの動作に差異がある
- 端末/OSごとに特有の不具合がある(端末メーカーがWebViewをカスタマイズ
していることがあります)

そのような問題があるにも関わらず、Android4.4以下ではWebViewは端末/OSに
依存しており、アプリ側でWebViewを修正することができません。
そのため、Android4~4.4を対応しようと考えるとクロスブラウザ対応レベル
の苦労が必要になります。
※Android5以降ではWebView単体をGoogle Playでアップデートできるようにな
りました


■ 問題点2:サウンドの再生の端末依存
----------------------------------------------------------------------

WebViewでサウンドの同時再生が必要とされる場合、WebAudio APIを利用する
ことになりますが、WebAudio APIが使えるかどうかはWebViewが対応している
だけではだめで、端末のCPUにも依存します。

そこで、より多くの端末で再生できるようにサウンドの再生をNative側で行う
ようにすると、今度はMediaPlayer APIの次のような辛さに直面します。

- 端末/OSごとに不具合がある
- MediaPlayerの実装のほとんどがJNIなので何か問題があってもアプリ側で対
応することが困難
- MediaPlayerの実装は端末/OS依存(端末メーカーがカスタマイズしているこ
とがあります)


■ 解決策:Android4~4.4でWebViewの実装の差が大きい問題に対応する
----------------------------------------------------------------------

Android4~4.4でWebViewの実装の差が大きいのが問題ならば、独自のWebView
をアプリに抱え持つことで解決します。
そのためのソリューションは色々ありますが、弊社では、下記の理由でCrossw
alkを採用しております。

- 動作が安定している
- Intelがスポンサーをしている
- Cordovaがプラグインで対応している

Crosswalkを採用することで次のメリットがあります。

- 使えるHTML5 APIに差がなくなる
- JS/CSSの挙動に違いが生じない
- Crosswalk自体にバグがあったとしてもアプリのUpdateで対応可能

ただし、WebViewをアプリ内部に抱え持つデメリットとして、通常のWebViewを
使用する場合に比べてアプリの容量が18Mほど増加します。


■ 解決策:サウンドの再生の端末依存問題に対応する
----------------------------------------------------------------------

WebViewの解決策と同様の発想で、OSに依存しないMediaPlayerの代替をアプリ
に抱え持つという解決策があります。
まさにその目的でgoogleが開発しているソリューションに、ExoPlayerという
ライブラリがありますので、ExoPlayerを利用するのがお勧めです。

ExoPlayerはAndroid4.1以上の対応になりますので、Anroid4.1未満も対応した
い場合はExoPlayerのラッパーであるExoMediaを利用すると便利です。
ExoMediaはExoPlayerが使えない場合には、内部的にMediaPlayerを利用するよ
うになっています。


■ まとめ
----------------------------------------------------------------------

Androidのハイブリッドアプリを実装する上で、大きく次の2つの問題がある
ことがわかりました。

- Android4~4.4の間でWebViewの実装の差の大きさ
- サウンドの再生の端末依存

対応方法をまとめると下記になります。

if ( Andriod4.4未満に対応する ) {
	Crosswalkを使う
}
if ( サウンドを再生する ) {
	NativeでExoPlayerを使って再生する
}

以上です。
ラスターワークスではがっかりさせないハイブリッドアプリの提案をさせて頂
いております。
ハイブリッドアプリで実現したいシステムがございましたらぜひ弊社までご用
命くださいませ。

(IH)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■参考
ExoPlayer
http://developer.android.com/intl/ja/guide/topics/media/exoplayer.html
ExoMedia
https://github.com/brianwernick/ExoMedia

 ■ 第3水曜日配信 次回の配信は2016年7月20日(水)の予定です ■
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
●お問合せはこちらまで mailmag@lusterworks.co.jp
●ホームページ     http://www.lusterworks.co.jp
発行元:株式会社ラスターワークス
〒150-0002 渋谷区渋谷2-7-14 VORT青山 6F
TEL 03-5778-4501
●Android,iPhoneアプリの開発も承っております。
 お気軽にお声掛け下さいませ。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ITエンタメ通信
発行システム:『まぐまぐ!』http://www.mag2.com/
配信中止はこちら http://www.mag2.com/m/0001090180.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

ITエンタメ通信

RSSを登録する
発行周期 第2第4水曜日に発行します。
最新号 2017/04/19
部数 81部

このメルマガを購読する

ついでに読みたい

ITエンタメ通信

RSSを登録する
発行周期 第2第4水曜日に発行します。
最新号 2017/04/19
部数 81部

このメルマガを購読する

今週のおすすめ!メルマガ3選

一緒に歩もう!小富豪への道
富裕層むけ、富裕層入りを目指す方むけの究極の資産防衛メルマガ!一国だけに資産を集めておくのは危険な時代がやってきました。海外ヘッジファンド、貴金属、不動産からアンティーク・コインまで、金融不安に負けない世界分散ポートフォリオを、経験豊富なファイナンシャル・プランナーが誠意をもってご案内します。
  • メールアドレスを入力

  • 規約に同意して

楽しく幸せな会社組織づくりのすすめ
組織変革コンサルタントが語る楽しく幸せな会社組織づくり・社員育成実践テクニックをご紹介。社員数名~100名前後の中堅・中小企業オーナー社長や経営層・人事部・管理職・仕事の幅を広げたいフリーランス・士業の方は必見! 社員の主体性や部門間の連携力を高める効果的なコーチング・研修・ワークショップなど具体的な打ち手も解説します。また自社で取り組んでいる管理・評価・指示命令が不要な新世代型の組織運営法「びりかん式経営」についてもご紹介していきます。
  • メールアドレスを入力

  • 規約に同意して

生きる意味は仏教に学びなさい
仏教メルマガ読者数日本一。今この瞬間に幸せを感じ、後悔のない人生にする方法とは?なぜどんなにお金があっても幸せになれないのか。むなしい人生になってしまう原因とは?あなたの人生を背後で支配する運命の法則と99%の人が自覚なく不幸を引き寄せている6つの行いとは…?仏教史上初のウェブ通信講座を開設、仏教の歴史を変え続ける中村僚が、葬式法事仏教となった現代日本の仏教界では失われた本当の仏教の秘密を公開。発行者サイトでも隠された仏教の秘密を無料プレゼント中。
  • メールアドレスを入力

  • 規約に同意して

今週のおすすめ!メルマガ3選

一緒に歩もう!小富豪への道
富裕層むけ、富裕層入りを目指す方むけの究極の資産防衛メルマガ!一国だけに資産を集めておくのは危険な時代がやってきました。海外ヘッジファンド、貴金属、不動産からアンティーク・コインまで、金融不安に負けない世界分散ポートフォリオを、経験豊富なファイナンシャル・プランナーが誠意をもってご案内します。
  • メールアドレスを入力

  • 規約に同意して

楽しく幸せな会社組織づくりのすすめ
組織変革コンサルタントが語る楽しく幸せな会社組織づくり・社員育成実践テクニックをご紹介。社員数名~100名前後の中堅・中小企業オーナー社長や経営層・人事部・管理職・仕事の幅を広げたいフリーランス・士業の方は必見! 社員の主体性や部門間の連携力を高める効果的なコーチング・研修・ワークショップなど具体的な打ち手も解説します。また自社で取り組んでいる管理・評価・指示命令が不要な新世代型の組織運営法「びりかん式経営」についてもご紹介していきます。
  • メールアドレスを入力

  • 規約に同意して

生きる意味は仏教に学びなさい
仏教メルマガ読者数日本一。今この瞬間に幸せを感じ、後悔のない人生にする方法とは?なぜどんなにお金があっても幸せになれないのか。むなしい人生になってしまう原因とは?あなたの人生を背後で支配する運命の法則と99%の人が自覚なく不幸を引き寄せている6つの行いとは…?仏教史上初のウェブ通信講座を開設、仏教の歴史を変え続ける中村僚が、葬式法事仏教となった現代日本の仏教界では失われた本当の仏教の秘密を公開。発行者サイトでも隠された仏教の秘密を無料プレゼント中。
  • メールアドレスを入力

  • 規約に同意して

他のメルマガを読む

ウィークリーランキング