BREW プログラミング入門(2)
|
|
イベント ハンドラでは、「アプレットが処理をした」イベントに対してTRUEを返し、「アプレットが処理をしない」イベントに対してFALSEを返さなければなりません。
ここではEVT_APP_STARTイベントに対してTRUEを返すことで、BREW実行環境に対して「イベントを処理しましたよ〜」と通知しています。
このような仕組みになっている理由は、アプレットが処理しないイベント (FALSE を返したイベント) に対して、BREW実行環境がデフォルトの処理を行うことがあるからです。
画面への描画
それではBREWアプレットが起動したタイミングで、携帯電話の画面に文字列を表示してみましょう。
以下のコードを見てください。分かりやすくするために、EVT_APP_STARTイベントを処理する別の関数を定義しています。
|
描画処理の詳細については今回は説明を行いません。ここに書いたとおり、そのまま入力してくださって結構です。
あれっ?と気づいた方おられるでしょう。HelloWorld_HandleEvent() 関数のIApplet* 引数がAEEApplet*に強制キャストされています。
詳細は次回以降の連載で解説しますが、イベント ハンドラの第1引数には、AEEClsCreateInstance() 関数で作成したアプレット構造体が渡されます。また、アプレット構造体は IApplet 構造体を拡張した構造体でなければならず、実際AEEAppletはIAppletを拡張した形で定義されています。
したがって、IApplet* の引数を AEEApplet* に強制キャストしても何も害はないということです。
BREWエミュレータ用にコンパイルする
さて、すべてのソースコードの準備ができました。もう一度すべてのファイルを確認してみましょう。
ファイル | 説明 |
HelloWorld.bid | HelloWorldアプレットのクラスIDを格納しているヘッダー ファイル。 |
HelloWorld.mif | HelloWorldモジュールのメタ情報を格納しているファイル。HelloWorldアプレットの情報を含んでいる。 |
AEEAppGen.c | BREWプロジェクトで共通に使われるソース ファイル。 |
AEEModGen.c | BREWプロジェクトで共通に使われるソース ファイル。 |
HelloWorld.c | HelloWorldアプレットを実装しているソース ファイル。 |
コンパイルを行うには、Visual C++のメニューから [ビルド]-[ビルド] を選択します。ソースコードに誤りがなければ、正常にビルドが行われ、アウトプット ウィンドウに次のようなメッセージが表示されます。
HelloWorld.dll - エラー 0、警告 0
HelloWorld プロジェクト フォルダのDebugサブフォルダに、HelloWorld.dllというファイルが作成されているはずです。
BREWエミュレータで実行する
BREWエミュレータで動作させるためには、HelloWorld.dllファイルと HelloWorld.mif ファイルが必要です。この二つのファイルを次のような場所にコピーします。
C:\Applet\HelloWorld.mif
C:\Applet\HelloWorld\HelloWorld.dll
BREWエミュレータを起動します。デフォルトではBREW SDKのExamplesフォルダにあるBREWアプレットがエミュレータ画面に表示されますので、エミュレータの読み取るフォルダをC:\Appletに変更する必要があります。
メニューから [ファイル]-[アプレットディレクトリの変更] を選択し、[フォルダの参照] ダイアログで C:\Applet フォルダを選択して [OK] を押します。
右図のように最初のアイコンを選択した状態で画面に "Hello World" というタイトルが表示されていれば、BREWエミュレータがMIFファイルを認識している証拠です。この段階ではアプリケーション本体である.dllは実行されていません。
この "Hello World" というテキストは、MIFファイルの [アプレット] タブの [名前] 項目に入力したものが表示されます。
アイコンを選択した状態でEnterを押しましょう。画面中央に太字で "Hello World" と表示されたでしょうか。
おめでとうございます! 初めてのBREWアプリケーションを作成することができました!
※今回の記事のソースコードは、ソフィア・クレイドル のサイトからダウンロードできます。
著者紹介 倉谷智尋:ソフィア・クレイドル研究開発部チーフサイエンティスト。ソフィア・クレイドルは、2002年2月京都市にて、無限の可能性を秘めたソフトウェア職人たちが楽しく集い、自ずと自己実現が達成される場になることを目指して創業。在籍スタッフの平均年齢は20歳台前半と若いが、その大半がプログラミング歴10年以上とそのプロフェッショナリティは極めて濃い集団である。 これまでにBREW用アプリケーションフレームワーク、ケータイJavaプログラム圧縮技術、ケータイJavaブラウザ技術、ケータイメッセンジャー技術などを総合的に研究開発し、「高品質な共通プラットフォーム」の実現を目指してきた。 ご感想、ご質問はこちら(zdnet-contact@s-cradle.com)まで。 |
[倉谷智尋, ITmedia]
Copyright © ITmedia, Inc. All Rights Reserved.
最新スペック搭載ゲームパソコン
高性能でゲームが快適なのは
ドスパラゲームパソコンガレリア!
最新CPU搭載パソコンはドスパラで!!
第3世代インテルCoreプロセッサー搭載PC ドスパラはスピード出荷でお届けします!!