iCade 8-bittyとHTML5で作るゲームの話

iCade 8-Bitty買いました

f:id:Haneda:20130207133750j:plain

iPhone,iPad,AndroidBluetoothでつながるレトロなコントローラーです。 大量に買ってますが大量な事と今回の記事の関係はありません。

こちらから購入出来ます。

さて、このiCadeですがBluetoothのキーボードとして接続され、キーコードが送られてきます。 UP,DOWNでそれぞれ別のキーコードが来ます。

  • 上押す w 離す e
  • 左押す a 離す q
  • 下押す x 離す z
  • 右押す d 離す c
  • みたいな感じです

ネイティブアプリで使えるのは当然ですがブラウザ上で動くアプリの場合は使えるか検証してみました いつものここで対応と確認済みです。

PC

Chrome,Firefoxでは普通に使えます。 windowにkeydownイベントをlistenする事で問題なく使えます。

iOS

f:id:Haneda:20130208011949p:plain

windowにはkeydownイベントは送られてきません。 < input type="text" >で作成したテキストフィールドにフォーカスがあればkeydownは来ますのでそこをlistenしましょう。 一応これで使えるのですが、テキストフィールドが表示されてしまっているのと、前後のテキストフィールド移動のバーが表示されるのが不格好。消し方知っている方いたら教えてください。

Android

ChromeでPCと同じように動いたけどそもそも動作が遅すぎるので検証は後回しで。。

f:id:Haneda:20130208010120j:plain

まとめ

PCでは全く問題なく使える。iOSでは若干の不格好さがある。WebViewを内蔵したネイティブアプリ化なども考えた方がいいかもしれない。