miyawareブログ

androidアプリ開発したりサイト運営したり日々奮闘する妻子持ちで元フリーエンジニアのBlogです。

enchant.jsやtmlib.jsを使ってAndroidのWebViewアプリ(側アプリ)を作る際の注意点

   

超絶はまったので残しときます。

■2015年9月頃
何となく昔のMSX風で超簡単なゲームを作りたいという思いもあり、
ちょっと調べたらenchant.jsのサンプルソースがネットに多いのでそれを使って開発開始。
「スプライト」とかの表現も懐かしい。
  ↓
■2015年10月頃
なんか敵キャラ2,3匹増えると重いぞ。。う、BGM追加したらもっと重い。。
  ↓
■2015年11月頃
tmlib.jsが早いというので移行するか。
でもサンプルのバージョンが0.3とか多いな。。最新は0.5だし。。
お、enchant.jsと結構似てて1日で移行できそうだ!おお、しかも早い!いける!!
  ↓
ん?Android端末によってはタップ時に画面全体がほんの一瞬止まるぞ。。
iPadminiは大丈夫。GalaxyS4も大丈夫。NEXUS7、NEXUS6駄目。
enchant.jsにしても一緒かぁ。。
これはもしやWebView問題か?タップするだけの単純なゲームだけにこれは問題だ。。
  ↓
WebKitだからかな。。でも、Chromアプリで動かしてもカクカクするな。。。
お、FireFoxだとサクサク。これはFireFoxのGeckoエンジンを使うしかないのか?
「GeckoWebView」というのがある!よし、試すか!!
…ビルドうまくいかないよ~。。。難しいよう~。。。疲れたよう~。。他の手段考えるか。。。
  ↓
ふぅ、WebViewのタッチをAndroidの場合だけネイティブで制御すれば
なんとかなりそうだ。。。ん?シャープのAQUOS CRYSTALで
「本環境はWebAudio未対応です。」ってtmlibからログ出てる!
WebViewのレンダリングエンジン(しかも端末メーカー独自)依存か、、、、ぐむむ、、、、
やはり、WebViewを何とかしないと駄目なのか。。
  ↓
Chromeアプリでは駄目だったけど、
XWalk(Androidの標準WebViewを置き換えるChromiumベースのViewコンポーネント)
というのを使ってWebKitベースからChromiumベースに置き換えてみるか。
・・・お、イイ感じだぞ。こっちの端末も、、、OK。
AQUOS CRYSTALは、、、、、OK!
よし、なんとかなりそうだ!!


【まとめ】
AndroidでWebViewベースのアプリを開発する際、
特にenchant.jsやtmlib.jsのライブラリ等を利用するアクションゲームでは
標準(WebKitベース)のwebviewではなく、Chromiumベースの「xwalkview」を
利用するようにしましょう。

 - android , , ,

スポンサーリンク

アドセンス用

アドセンス用

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

アプリが削除されました。

朝起きたら「大人の塗り絵(富嶽三十六景 01-12)」が削除されてました。 説明 …

no image
Android Developer Toolsの開発が終了、、、。

GoogleがAndroidStudioの開発に集中するため、ADTの開発を終了 …

プライバシーポリシー書きました。

この時の件の続きです。 パーミッション問題は解決したのですがプライバシーポリシー …

【ピンチ】またアプリが削除されました。

実は先日、Google Playからまたしてもメールが届き、 アプリが消されて( …

AndroidStudioを使って公開。

アプリを1年以上更新していなかったのでシルバーウィークを利用して更新しました。 …

「Google Play デベロッパー ポリシー違反に関わる警告」メールが複数届きました。

実は数日前から複数届いていました。どうやら「個人情報または機密情報に関わる権限 …

Androidアプリに知らないパーミッションが勝手に付いてる件。

先日の「Google Play デベロッパー ポリシー違反に関わる警告」メールが …