ホーム > デベロッパ > BREW プログラミング 入門

ソフィア・クレイドル : BREW プログラミング 入門 − BREW 技術情報 −

ソフィア・クレイドル : BREW プログラミング 入門

BREW API の基本的な使い方について解説します。BREW アプリの開発と保守の生産性が劇的に向上する BREW 向け C++ プログラミング環境 SophiaFramework UNIVERSE のサンプルコードもダウンロードできます。

 SophiaFramework UNIVERSE : BREW C++ ライブラリ & GUI フレームワーク & XML ミドルウェア

[ 新着情報 ] 2011/07/15、SophiaFramework UNIVERSE 5.3.0 リリース

描画エンジン (SFYRenderer クラス) による描画がより効率的になりました。

サスペンド時に描画エンジンを終了することで、デバイス画面ビットマップをメモリから解放できるようになりました。

SFXHTTPConnection クラスに接続タイムアウト機能を追加しました。

簡易なウェブブラウズ機能を提供する SFYWebBrowserWiget クラスを追加しました。 SFZWebBrowserControl クラスは内部でそれを使用します。

詳細は、SophiaFramework UNIVERSE リリースノートを参照してください。

目次

前提条件

サポートについて

ソフィア・クレイドルは以下のソフトウェアの使用または使用不能に関する、サポートを実施いたしません。

また、これらのソフトウェアの使用によるいかなる障害や問題に対しても、一切の責任を負いません。

第 1 回:BREW SDK をインストールしよう!

BREW の概要、BREW SDK のインストール、BREWエミュレータの使い方について解説します。

* ダウンロードするファイルはありません。

第 2 回:HelloWorld プログラムを作ろう!

実際にソースコードを書き、BREWエミュレータで動かしてみましょう。

画面に "Hello World" と表示する簡単なBREWアプリを作成します。

記事掲載プログラムのソースコード
 ダウンロード : HelloWorld.zip
SophiaFramework UNIVERSE を使用して作成した ソースコード
 ダウンロード : yhelloworld_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 3 回:画面に描画してみよう!

画面描画のAPIについて詳しく説明するとともに、インタフェースやアプレット構造体についての理解を深めます。

記事掲載プログラムのソースコード
 ダウンロード : Square.zip
 ダウンロード : Shape.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : square_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)
 ダウンロード : shape_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 4 回:BREW の文字列について知ろう !

BREWの文字列の扱い方について解説します。 また、文字列を画面に描画する方法や、フォントについても解説します。

記事掲載プログラムのソースコード
 ダウンロード : TextWrap.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : textwrap_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 5 回:イベント処理って何だ?

BREWのイベント処理について学びます。

記事掲載プログラムのソースコード
 ダウンロード : Nico.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : nico_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 6 回:ビットマップを描画してみよう

ファイルやリソースに関する事柄とビットマップやイメージの描画について解説します。

記事掲載プログラムのソースコード
 ダウンロード : drawbmp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : drawbmp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 7 回:さらに描画のおはなし

今回も前回に引き続き描画の解説をいたします。

記事掲載プログラムのソースコード
 ダウンロード : graphix.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : graphix_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 8 回:ファイルを操作してみよう

描画については 一通り解説しましたので、今回は第6回でも少しだけ取り上げたファイル システムについて解説したいと思います。

記事掲載プログラムのソースコード
 ダウンロード : filesystem.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : filesystem_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 9 回:音を出してみよう

今回はBREWで音を出してみましょう。

記事掲載プログラムのソースコード
 ダウンロード : PlayMedia.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : playmedia_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 10 回:携帯電話で動かしてみよう

今回はいよいよ携帯電話の実機で動作させてみましょう。

*ダウンロードするファイルはありません。

第 11 回:TCP / IP ネットワークプログラミング

「ソケットプログラミングは、ホスト名とポート番号を指定して接続すれば、あとはデータを送受信するだけ」という認識の方には、少々複雑かもしれません。

記事掲載プログラムのソースコード
 ダウンロード : socketapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : socketapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 12 回:HTTP ネットワークプログラミング

IWeb は HTTP プロトコルを処理する BREW インターフェースです。URL などの各種通信パラメーターを設定し、通信をするコールバック関数を登録して、応答を待ちます。

記事掲載プログラムのソースコード
 ダウンロード : webapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : webapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)
SophiaFramework UNIVERSE を使用して作成したソースコード ( SFXHttpConnection クラスを使用)
 ダウンロード : httpapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 13 回:BREW のテキストコントロール

ITextCtl インターフェースはテキスト入力のための BREW 標準の GUI コントロールのひとつです。

記事掲載プログラムのソースコード
 ダウンロード : textctlapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : textctlapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 14 回:暗号と復号のアルゴリズム

ICipher と IRSA は、暗号化と復号化のアルゴリズムが実装された BREW インターフェースです。暗号キーは、ハッシュ値を計算する IHash インターフェースを使います。これらのインターフェースは外部サーバと安全に通信したいときなどに便利です。

記事掲載プログラムのソースコード
 ダウンロード : cipherapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : cipherapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 15 回:BREW で GPS

IPosDet は GPS を利用するための BREW インターフェースです。IPosDet を使うと、GPS から現在位置の緯度、経度、海抜高度、誤差などが取得できます。

記事掲載プログラムのソースコード
 ダウンロード : gpsapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : gpsapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 16 回:Web サイトの表示方法

IHTMLViewer は HTML データをインライン画像も含めて画面にレイアウト表示する BREW インターフェースです。

記事掲載プログラムのソースコード
 ダウンロード : htmlviewerapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : htmlviewerapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 17 回:サスペンドとレジューム

電話の着信など優先度の高いイベントが発生すると BREW アプリは処理を停止します。通話などのタスクが終わると、 BREW アプリは中断していた処理を再開します。BREW アプリの処理の停止を"サスペンド"、再開を"レジューム"と呼びます。

記事掲載プログラムのソースコード
 ダウンロード : suspendapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : suspendapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 18 回:BREW でカメラ (前編)

「何時でも何処でも誰もがカメラマン」と言ってよいくらい、最近の携帯電話にはカメラが標準搭載されています。BREW でも、バージョン 2.1 からカメラ機能がサポートされました。

BREW におけるカメラのプログラミングを 2 回に分けて解説します。

記事掲載プログラムのソースコード
 ダウンロード : camera_app.zip

第 19 回:BREW でカメラ (後編)

第 18 回 " BREW でカメラ (前編) "で作成したアプリを機能拡張して、デジカメのように静止画撮影を行うためのプログラミングを解説します。

記事掲載プログラムのソースコード
 ダウンロード : camera_app2.zip

第 20 回:乱数と浮動小数点

BREW では、現在時刻をシードとして乱数を発生させます。しかし、任意の値をシードとして乱数を発生させる方法は BREW 標準で用意されていませんので、独自に実装する必要があります。

記事掲載プログラムのソースコード
 ダウンロード : mathapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : mathapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 21 回:BREW のタイマー

BREW のタイマーは、ISHELL_SetTimer インターフェースで設定した一定時間経過後に登録した関数( コールバック関数 )を呼び出すコールバックです。

記事掲載プログラムのソースコード
 ダウンロード : timerapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : timerapp_sf.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)

第 22 回:BREW で GUI プログラミング

BREW には実用レベルで使える GUI コンポーネントが標準で備わっていません。通常、GUI の実装ではコンポーネント別にオブジェクト指向的なプログラミングがなされます。つまり、すべてのイベントが適切なイベントハンドラに送られ、適切に処理されるようにプログラミングします。これはBREW アプリ開発における最大のボトルネックです。

記事掲載プログラムのソースコード
 ダウンロード : guiapp.zip
SophiaFramework UNIVERSE を使用して作成したソースコード
 ダウンロード : sfyguiapp.zip (SophiaFramework UNIVERSE 5.1/BREW4.0)