ホーム > デベロッパ > J2ME / MIDP プログラミング > 第 6 回

第 6 回 : IM "improve" の実機対応と携帯電話の将来展望

はじめに

IM "improve" の実機対応の方法、それから携帯電話の将来展望についてまとめます。


improve の実機対応

ezplus ( KDDI ) の仕様に併せて実機対応し実際に試します。

攻撃されたとき

第 2 回で紹介した「攻撃」とはチャット中に手動でポーリングをかけると同時に、相手の端末を振動させる機能です。攻撃する側は通常のメッセージと同様に 「攻撃メッセージ」を送るだけですが、攻撃された側では実機を振動させる処理が必要となります。 ezplus において、端末を振動させるのは以下のコードです。

変更前 PollingTask.java (元ソースの8行に以下挿入)

import javax.microedition.io.Connector;

import com.kddi.io.PhoneConnection;

import com.kddi.io.HttpResource;

import java.io.IOException;



(元ソースの109行に以下挿入)

PhoneSystem phoneSystem = new PhoneSystem();

phoneSystem.onVibration(VIBRATION_SPAN);

わずか 2 行だけの変更です。振動時間 VIBRATION_SPAN は 500 ms に設定しました。

電話をかける

次に電話をかけるコードは以下のようになります。

変更前 TwoChoiceMenu.java (元ソースの7行に以下挿入)

import javax.microedition.io.Connector;

import com.kddi.io.PhoneConnection;

import com.kddi.io.HttpResource;

import java.io.IOException;



(元ソースの72行に以下挿入)

HttpResource hr = new HttpResource();

hr.shutdown();



try{

 PhoneConnection conn =

 ( PhoneConnection ) Connector.open( "phoneto://"+buddy.getPhoneNumber()

 ); conn.close();

} catch( Exception ex){

 //NOP

} 

buddy.getPhoneNumber で返ってくるのは "09012345678" といった、電話番号の String です。電話中、処理は open メソッドに留まり、通話が終了すると戻ってきます。

携帯電話の将来展望

世界最初のコンピュータ「ENIAC」が世に登場したのは1946年のことです。あれから、半世紀に渡る時を経て、コンピュータはあらゆる側面から進化・発展を遂げてきました。

『エニアック−世界最初のコンピュータ開発秘話−』(スコット・マッカートニー著)によると、「ENIAC」は高さ9フィートのキャビネット40個に、1万8千本近くの真空管から構成され、床面積1800平方フィート、重量30トンという巨大なコンピュータでした。動かすには174キロワットの巨大な電力が必要で、コンピュータが動作していない時でさえ、その電気代は1時間あたり650ドルもしました。また、「ENIAC」はひとつの弾道を計算するのに30秒もかかりました。

しかし、現代のスーパーコンピュータでもってすれば、その弾道計算に必要な時間は3マイクロ秒以下です。今のコンピュータは、「ENIAC」と比較してその処理速度は1000万倍以上です。そして、Java が搭載された携帯電話でその弾道を計算したとしても30秒はかからないでしょう。今後、携帯電話の処理性能はますます加速度を高めて、予想もしない方向に更に、進化・発展を遂げるでしょう。その未来を予測しつつ、ハードウェアやソフトウェアの技術開発をする仕事はとても興味深いものです。今や、50年前には30トンもの重量を有するコンピュータを越える処理性能が、ポケットに入れて持ち運びできる携帯電話の中にあるのですから。

昔、「マイコン」と呼ばれていた今の「パソコン」の原点である「マイクロプロセッサ4004」(日本のビジコン社製)が、初めて登場したのは1976年のことです。これには0.6 MIPS の計算能力があり、これは「ENIAC」と同等の性能であったらしいのです。ところが、当時は、世界最大のコンピュータ会社である IBM 社を含め、まさにこの「マイコン」が、今日の「パソコン」として大きく進化・発展するという無限の可能性を予見できた人はほんの極僅かでした。

その意味合いから、今は、10キロバイト、30キロバイトなどのメモリ制約や処理性能の面で、パソコンと比較すれば大きく見劣る携帯電話ですが、実は、何十年か前の大型コンピュータに匹敵する CPU 性能がなんと今の携帯電話の中に存在しているのです。その驚くべき事実をよく認識・理解し、留まることない数々の技術革新により今のパソコンの CPU 性能に匹敵する処理性能が、将来の携帯電話に搭載されるものと考えて、未来の携帯電話の姿を想像することがとても大切ではないかと思います。

コンピュータの未来を占う上で大きなヒントとなるのが、IT 技術の発達により、コンピュータがそもそも開発されたきっかけとなった計算能力を、今や必要としなくなったのだという課題をよく理解することでしょう。現在、コンピュータで大きな課題となっているのは、『使い易さ』、『便利さ』、『快適さ』、『面白さ』など、利用者サイドにとっての、日常に即してのより切実で高度な要求に向けての解決策ではないでしょうか。

20年前は余程のマニアで無い限り、個人で「マイコン」を購入し、その利用を楽しむということはありませんでした。しかし、近年のハードウェア技術の急速な発達を梃子にして開発された Windows やインターネットブラウザのような、主として「ユーザーインターフェース」を中心とした使いやすいソフトウェア技術の登場により、子供や年長者やあらゆる方がパソコンを操れる時代となりました。しかし、「パソコン」という外見的にも技術的にもとっつきにくいイメージがあることが、かえってある種の障壁となってしまい、一部の方たちには利用がためらわれる傾向にあります。しかし、今後、コンピュータというものは、より『人間の視点』に立つことを前提にしたプログラミングがなされることにより、今の携帯電話のようにその中にコンピュータが内蔵されていることをまったく意識させないものに変化するでしょう。私たちは、あたかもテレビ、書籍、文房具、電話などの日用品のように全ての人が自然にかつ自由にコンピュータを利用するという大きな潮流の中にあるのです。

これを達成するには、ユーザーインターフェース、人工知能、小型化、無線など今まで以上に高度なコンピュータ技術の更なる技術革新が必要とされるでしょう。例えば、何年後かには、今の最新式パソコンを上回るコンピュータ性能や無尽蔵に利用できる高速無線回線、ハード機器間の無線接続などが携帯電話に実現されるようなことをイメージアップすれば、現在と大きく異なる携帯電話の利用シーンが浮かんでくるかもしれませんね。