Textalkバージョンアップ

  • 投稿日:
  • by
  • カテゴリ:

聴覚障碍者向けのAndroidアプリ「Textalk」を久しぶりにバージョンアップした。

機能追加の中心は通信機能。もともとこのアプリは、音声認識か手書きでメッセージを入力して相手に見せる、という使い方を想定していた。しかし会話する双方がスマートフォンかタブレットを持っている場合、メッセージを相手のデバイスに送信できれば便利かもしれない。そう考え、いくつかの方式で通信できるようにした。

一番よさそうだったのがAndroid 4.0から導入されたWiFi P2P。デバイス同士が直接通信してネットワークを形成できる。しかし実際に使ってみるとうまく接続できないことが多い。私が書いたアプリの不具合ではなく、Android自体に含まれているアプリを使ってもうまくいかない。テスト用に買った激安のタブレットが悪いのかもしれないが、とにかく使えない。

やむをえないので普通のWiFiのネットワークでUDPのブロードキャストを使って接続できるようにした。

  • UDPで自己自身の名前をブロードキャスト
  • 受信側はブロードキャスト元のIPアドレスにTCPで接続

WiFiのテザリングでも接続できるようにした。テザリングの場合、ホストの/proc/net/arpに接続されたクライアントのIPアドレスが書き込まれるので、それを拾ってクライアントにTCPで接続することができる。

BlueToothを使うことも考えたが、ソケットがWiFiと違っていてコードが共通化できないので見送った。