連載
» 2010年12月27日 00時00分 公開

小山博史のJavaを楽しむ(15):年末でJetty(絶対)にできる Android携帯サーバ活用 (1/4)

教育界、技術者コミュニティでJava言語の教育と啓蒙に長年携わってきた筆者が、独自の視点からJavaの面白さを掘り下げていく。(編集部)

[小山博史,株式会社ガリレオ]

スマートデバイス使ってますか?    

 今年はiPadが注目を浴びてタブレットマシンの人気が急上昇中した年でした。スマートフォンでも、AndroidiPhoneともに大きな話題になって、これまでの携帯端末とは違った盛り上がりを見せています。スマートデバイス躍進の年として歴史に残りそうな勢いです。

 そんな中、筆者はAndroid OSを搭載したタブレットマシン「Galaxy Tab」を使える機会があったので、いろいろと遊んでみました。スマートフォンだと、やはり性能が低いためにクライアント端末として利用することを前提としたアプリケーションが多いのですが、Galaxy Tabのような製品が市場に出てくると、サーバ機能を持った持ち運べるコンピュータとして利用したくなる人も多いはずです。

 今回は、そういった用途も視野に入れて、Androidサーバアプリが開発できないか、見てみることにしましょう。

Galaxy TabとHT-03Aのスペック

 まずは、Galaxy Tabの性能について簡単に説明しておきます。詳細はNTTドコモのWebサイトの「GALAXY Tab SC-01C」や、SAMSUNGのWebサイトの「SAMSUNG mobile | 製品情報 | SC-01C」にあるとおりなので、そちらを見ていただくとして、ここでは開発時に気になる点についてチェックしておきましょう。

  • OS:Android 2.2
  • メモリ:ROM 512Mbytes+16Gbytes、RAM 512Mbytes
  • プロセッサ:S5PC110/1GHz
  • 画面解像度:横600ドット×縦1024ドット/ワイドSVGA(WSVGA)
  • 画面タイプ:TFT/1677万7216(24bit)色

 筆者はAndroidのスマートフォンとして、HT-03Aを持っていますが、そちらの性能はNTTドコモのWebサイトの「HT-03A サポート情報 : サービス・機能とスペック」を見ると分かるように、次のようなものでした。

  • OS:Android 1.5(アップデートすると、Android 1.6)
  • メモリ:ROM 512Mbytes、RAM 192Mbytes
  • プロセッサ:Qualcomm MSM7201A/528MHz
  • 画面解像度:横320ドット×縦480ドット/ハーフVGA(HVGA)
  • 画面タイプ:TFT/6万5536(16bit)色

 発売時期から考えると当然のことですが、HT-03AよりもGalaxy Tabの方がプロセッサも速くなっていますし、RAMも2倍以上ありますから、マシンスペックは格段に良くなっています。

図1 Android HT-03A 図1 HT-03A(左)とGalaxy Tab(右)

「持ち運べるサーバ」を何に使うか?

 Galaxy Tabについては、世の中ではタブレットならではの使い方に注目をした記事が多いのですが、開発者としては、「クライアントマシンとしてどれぐらい使えるのか」「どんなアプリケーションを稼働させると便利になるのか」「サーバ機能の搭載はできるのか」といったことも気になると思います。

 とはいえ、こういったAndroidマシンは、「どういったことに使う目的で購入されるのか」考えたうえで、タブレット向けアプリケーションを開発する必要はあります。

タブレットマシンの使い道

 Galaxy Tabは携帯電話にしては大きく、パソコンにしては入力がしにくく、閲覧用情報端末にしては中途半端な画面サイズです。ですから、筆者の考えとしては、この製品を購入する人は、「現在持っている製品と併用すると便利そうだと思える人ではないか」と考えています。つまり、メインマシンをサポートするサブマシンとなるわけです。

 みんながGalaxy Tabのようなマシンを1台ずつ持つような世界になると、それはそれで楽しいことがいろいろできるようになりそうですが、現実的には難しそうです。きっと「友達同士で一緒に集まるときに、誰かが1台持っていると便利」といった感じになるのでしょう。タブレットマシンを持つような人も、「携帯電話+Galaxy Tabで出かけるか」「ノートパソコン+Galaxy Tabで出かけるか」「iPad+Galaxy Tabで出かけるか」といった感じで、いずれにせよ「Galaxy Tab1台だけで何でもやろう」と考えている人は少ないでしょう。

スマホで持ち歩くには大きく、クラウドに置くにも大き過ぎて転送に時間がかかるデータ

 そうやって考えてみると、ますます、Galaxy Tabはスマートフォンの代替機でもなく、ノートパソコンの代わりでもないので、あると便利なアプリケーションというのは、変わってきそうです。そういったアプリケーションとしては、どういったものがあるかというと、スマートフォンでは難しいけれどノートパソコンを取り出して動かすほどのことではないようなサービスを提供できると良さそうです。

 そこで思い付くのが、「持ち運べるサーバとして利用できるのではないか」ということになります。クラウドへデータを置きたいこともあるでしょうが、手元に置きつつ持ち運びたいデータもあるでしょう。スマートフォンで持ち歩くには大きく、クラウドに置くにも大き過ぎて転送に時間がかかるようなデータについては、手軽に利用できる携帯サーバに入れて持ち運べると便利そうです。そうやって考えてみると、いろいろなアイデアが浮かんできそうです。

Androidをサーバにするアプリたち

 実際にAndroidアプリを検索してみると、いろいろ出てきます。root権限を持っていないとインストールしたり、動かしたりできないものもあります。セキュリティ面など保障できませんので、ご使用には十分にご注意ください。

HTTP Webサーバ

 「PAW Server」を使うと、AndroidでHTTP Webサーバを動かして、PCのWebブラウザからAndroidへアクセスできるようになります。システム情報を参照したり、ファイルシステムを閲覧したり、壁紙を変更したりといったことが可能です。

ネットワークストレージ

 「ServersMan」というのもあります。Android端末をサーバにすることでネットワークストレージとして活用しやすくし、ファイル共有もしやすくしています。Androidを「パーソナルデータセンタ」化することを目指しているようです。

VNCサーバ

 また、「droid VNC server」や「android-vnc-server」のように、Android端末でVNCサーバを稼働させて、PCなどから利用すると便利そうだと考えている人もいるようです。

Servletコンテナ/アプリケーションサーバ

 ちょっと調べてみると分かりますが、Servletコンテナアプリケーションサーバの「Jetty」を移植した「i-jetty」というAndroidアプリもあります。あまり話題にはなっていないので、こういった分野はニッチなのかもしれません。とはいえi-jettyを使うと、Galaxy TabでサーブレットJSPが動かせそうなので、ちょっとわくわくしてきます。

 探せば、ほかにもサーバ機能を持ったAndroidアプリはたくさんありそうです。

 さて、こうやっていくつかの携帯サーバ用アプリケーションがあることを知ると、実際に自分でも開発したくなってくるはずです。その方法を次のページから解説します。

       1|2|3|4 次のページへ

Copyright© 2018 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。