JavaのJ2MEのベースのモバイル技術を詳細に紹介(4)



FundTrackerの例では、MIDletのユーザーインターフェイスまたはディスプレイ表示クラス、管理のインスタンスによって。各MIDletのは、1つだけのディスプレイマネージャのインスタンス。すべての項目が画面やキャンバス(キャンバス)、それを通じて管理者が見えるようにして表示することができます。容量携帯電話やポケットベルのアプリケーションの種類ごとにこれらのデバイスは、MIDPの仕様では、ユーザーインターフェイスの2種類を提供するための多様性と、からだ。移植やや少ないクリア機器、グラフィック要素と配置を正確に制御することができます低レベルのアプリケーションプログラムインターフェイスです。このインターフェイスタイプは、電子ゲームなどの特別に設計さ機器のアプリケーションの典型的な特性です。やや良い移植性が、抽象的な、高度なGUIアプリケーションプログラムインターフェイス、商用アプリケーションに使用されるに提供する。

高度なアプリケーションプログラミングインターフェイスの私達の日常的な使用は、一般的なユーザーインターフェイスコンポーネント(テキストボックス、リストなど)、インターフェイスの一般的なタイプです。たとえば、実際のフォームとすべてが1つのファイル内のグループの作品の定義されている。コード内で第一項、MIDletが、フォームMIDletの関連付けられているインスタンスが作成されますに記載されている。 MIDletのstartApp()メソッドを呼び出すことでフォームが表示オブジェクトを介して表示されるとき。使用して、1つのフォームクラスの、我々の簡単な検索アプリケーションを、再度このフォームを(RetrieveQuote)を使用し提供することができます。明快さとスタイルのために、我々はサービスを提供する1つのクラスの定義を採択した。コネクタの能力クラスバック提供のコネクタインスタンスを介して当社のサービスを提供するための一般的な構造を明らかにする。

MIDPのプラットフォーム装置は単純なデータレコードを格納するためのメカニズムを提供するために必要な再起動およびシステムbattery of integrityのmaintenanceを更新などのように通常のイベント、、プラットフォーム。 MIDPは永続的なデータベースレコードストアと呼ばれる。この例では、MIDletを開こうとすると"MutualFundQuotes"レコードストアにレコードを追加します。デモプログラムとして、レコードストアにレコードの種類のみを追加することができるバイトの配列です。同じRecordStoreのは、リソースは、それはスイートで共有することができます。 MIDPの仕様では、ときにMIDletはプラットフォームから削除、レコードストアは、プラットフォームから削除されます。

PDAの概要

PDAのパーム社は、この要約の表は、また、長い期間のCLDCでは改善されると、kjavaクラスのパッケージの代替になる標準化されたサマリー表のリーダーを開発している。 Javaの仕様では、少なくとも2つの機能の中核部分を:"限られたサイズと表示"と永続的なデータストレージ機構の深さのユーザーインターフェイスの表示ツールキットを提供する必要がありますこのプロファイルをお勧めします。ディスプレイ抽象的なウィンドウのツールキットは、ツールキットのサブセット、およびアプリケーション、データ、設定長期機構/環境情報の単純なデータストレージを提供することがあります。

財団の概要

3次の概要の表は、非常に一般的ではない、これらの3つの関数は、サマリー表は、注文のCDCを改善するためです。個人とRMIの概要の表は、実際には拡張子が財団の概要です。財団の概要タスクは、サマリーテーブルの基礎として、開発シンプルなネットワーク、それをテーブルの上についてるのグラフィカルユーザーインターフェイス機能の将来の提供を促進するために行動することです。財団の概要テーブルに加えて、財団の概要、かどうかは、グラフィカルユーザーのinterface use支援の完全なネットワークをprovides。

個人の概要

現在の仕様の要件の下で、個人サマリー表次世代『パーソナル環境を提供します。この要約の表は、インターネット接続とWebの忠実度を提供し、GUIでJavaアプレットを実行することができると約束した。

RMIの概要

リコールCDCは、共有の固定ネットワーク接続の情報機器の最小のJava環境として設定されます。概要のRMIは、RMIのJavaに来て良いのネットワーク接続を提供するためのJavaを提供します。 J2SEの使用(1.2.xのまたはそれ以降)のRMI、要約の表のネットワークデバイスをandアプリケーションは、other systems(システム)のJ2MEを実行する必要はありませんwithインタラクションができる。Through。

kjavaクラス

は、PalmデバイスのKVMと構成の以前のバージョンを実行して前述したように、kjavaクラスは、クラスの初期テストを提供することです。 PDAの要約テーブルはそれらが置き換えられます。 kjavaのクラスは、CLDCではを拡張し、グラフィカルユーザーインターフェイスは、Palmのデータベースへのアクセスは、クラスの単純なセットと三角法の計算を提供します。

段落2はコードでは、私は、MIDPのFundTrackerプログラムを書き換えcom.sun.kjavaそれはPalm上で動作するよう使用します。また、上記の手順は、この簡単な手順は、ユーザーがバックが提供する公的資金、WWWサービスプロバイダからの金融商品のコードを入力することができます。

kjavaアプリケーションと呼ばれるspotlet。実際には、アプリケーションは多くのspotletのが、構成することができますいつでも1つだけspotletは、Palmの画面に表示されることができます。この例では、我々はユーザーインターフェイスを提供するために基本的なspotletを - RequestFormSpotlet.java、我々の2つのspotletsのサブクラスを作成します。コードセグメントは2の入手方法と提供を格納する基本的なRequestFormSpotletを拡張します。 RetrieveSpotletもRequestFormSpotlet基本的な入札を拡張し、ストレージができます回復する(図)

コードセグメント2

輸入com.sun.kjava .*;

公共finalクラスFundSpotletはRequestFormSpotletを(拡張

静的ボイドは、main(Stringは[]をargs)を(公開

新しいFundSpotlet()は()を描く。



します。private void draw()では(

initForm();

上余白("基金株価要求");



します。public void penDown(int型のx、int型のy)は(

(getExitButton()は。押さ(のx、y))(

()getGraphic。playSoundを(Graphics.SOUND_CONFIRMATION);

でSystem.exit(0);



(getSymField()は。押さ(のx、y))

getSymField()。SetFocusで();

(getGetButton()は。押さ(のx、y))(

()quoteRequested;





します。private void storeQuote(文字列のファンドは、String newQuote)(

int型dbTypeが= 0x46554e44;

int型ロールdbcreator = 0x43415454;

com.sun.kjava.DatabaseのquoteDB;

(しようとする

quoteDB =新しいcom.sun.kjava.Database(dbTypeが、

ロールdbcreator、com.sun.kjava.Database.READWRITE);

(もし!quoteDB。IsOpenを())(

com.sun.kjava.Database.create(0、"MutualFundQuotes"

ロールdbcreator、dbTypeが、偽);

quoteDB =新しいcom.sun.kjava.Database(dbTypeが、

ロールdbcreator、com.sun.kjava.Database.READWRITE);



はbyte []データ=(資金+"#"+ newQuote)GetBytesメソッド();

quoteDB.addRecord(データ);

quoteDB.close();



(例外recordException)(キャッチ

System.out.println("引用符を格納することができません/または使用

ミューチュアルファンド引用データベースです。");





します。private void getAndDisplayQuote()(

文字列fundSymbol = getSymField()。GetTextは();

(fundSymbol.length() 0)(存在する場合

文字列theQuote = QuoteService.getQuote(fundSymbol);

(theQuote場合!= null)は(

storeQuote(fundSymbol、theQuote);

メッセージ(theQuote);





メッセージは("いいえ引用。")シンボルを確認する。





します。private void()が(quoteRequested

メッセージ("");

()getGraphic。playSoundを(Graphics.SOUND_STARTUP);

((getSymField()は。gettext()の長さ() 0))(

getAndDisplayQuote();

)エルス



メッセージは("シンボルが必要です!");