ホーム > デベロッパ > BREW FAQ

BREW FAQ : 用語集

ADS とは?

ADS とは、Application Download Server の略で、Qualcomm による、TRUE BREW テストに合格したアプリのみ登録され、配信される事ができます。

      

AECHAR とは?

AECHAR とは、日本語などの "ワイド文字"を格納するための型です。

AECHAR は " AEEStdDef.h" ヘッダーファイル のなかで

typedef    uint16   AECHAR;

で定義される符号無しの16ビット整数( 2 バイト文字 )です。

使われる 2 バイト文字のコードは、 日本では S-JIS、米国では ISOLATIN1、韓国では KSC901 など BREW 端末によって異なります。

BREW では、 char 型の 1 バイト文字も利用できます。

テキストを画面に描画する IDISPLAY_DrawText() 関数は、AECHAR 型の文字列を引数として受け取ります。

そのため、文字列を画面に表示する際、STREXPAND() ヘルパー関数を使って 1 バイト文字と 2 バイト文字が混在する char 文字列は AECHAR 文字列に変換する必要があります。

逆に、AECHAR 文字列を char 文字列に変換するには、 WSTRCOMPRESS() ヘルパー関数を使います。

      

BAR ファイルとは?

BAR とは、BREW Application Resource の略で、BREW アプリで使用する文字列、オブジェクト、ダイアログ、そして、サウンドや画像等のバイナリデータが格納されています。

BAR ファイルは、 BREW SDK Tools に同梱されている BREW リソースエディタ を用いて作成します。

その際、BREW 3.0 以前は h 形式、3.0 以降は BRH 形式の C 言語 ヘッダーファイル が自動的に生成されます。

      

BCI ファイルとは?

BCI ファイルとは、BREW Compressed Image 作成ツール ( BCI ツール )で作成される圧縮ファイルのことです。

IImage インターフェイスを使って、画像やアニメーションなどの BCI ファイルを表示します。

      

BID ファイルとは?

BID とは BREW Class IDの略で、このファイルは、BREW モジュールを構成する BREW アプレット の名前やクラス ID が記録されている C 言語の ヘッダーファイル です。

BID ファイルは必ずソースコードにインクルードされます。

BID ファイルは、 BREW SDK Tools に同梱されている BREW MIF エディタ を用いて作成します。

      

BREW 2 Bit Tool とは?

BREW 2 Bit Tool とは、4 ビットの BMP 形式のビットマップ (以降、ビットマップ) と 2 ビットのビットマップを変換するツールです。

このツールを使用すると、Windows に付属のペイント ツールでは作成できない 2 ビット (モノクロ 4 階調) のビットマップが作成できます。

2 ビットのビットマップを使用する利点は、画像サイズを小さくできることです。 白と黒の濃淡で画像を作成する場合に使用します。

BREW アプリで 2 ビットのビットマップを使用する場合は、 IBitmap インターフェイスを使用します。

詳細は、『BREW ユーティリティ ガイド』の「BREW 2 Bit Tool の使用」を参照してください。

      

BREW AEE とは?

BREW Application Execution Environment の略で、BREW アプリの実行環境のことです。

BREW AEEは シェルサービス、メモリ管理、ファイル管理、ネットワーク管理、データベース管理、タイマー管理、UIコントロール、画像処理、グラフィック表示など、デバイスにアクセスするための各種 BREW インターフェースを提供します。

他のモジュールを動的に呼び出したり、エクステンションを追加して BREW AEE そのものを拡張することも可能です。

      

BREW AppLoader とは?

BREW AppLoader とは、PC で開発した MOD ファイル等を携帯端末に転送するソフトウェアです。端末からファイルをPC に転送することも可能です。

ファイルの転送以外にも、端末上でフォルダを作成したり、端末をリセットできます。

ただし、端末上の MODMIFSIG ファイル等の PC へのアップロードや閲覧はできません。

このツールは、BREW LoggerBREW AppSignerThe Grinder 等と一緒にBREW Tools Suite というセットで Qualcomm 社の Web サイトにて無償で配布されています。

※ BREW AppLoader を入手するには BREW ディベロッパの認定が必要です。

      

BREW Compressed Image (圧縮画像) 作成ツールとは?

BREW Compressed Image 作成ツール (以降、BCI ツール) とは、 画像の圧縮やアニメーションを作成するツールです。

このツールで作成した画像は、BCI 形式でファイル (以降、BCI ファイル) に保存されます。

BCI ファイルとは、BCI ツールで作成される圧縮ファイルの形式です。

IImage インターフェイスを使用して BCI ファイルを扱うと、 携帯電話上で簡単に圧縮画像やアニメーションの表示ができます。

詳細は、『BREW BCI ガイド』を参照してください。

      

BREW DLLとは?

.BREW DLLとは BREW Dynamic-Link Libraries の略で、マイクロソフト社の Windows 上で、各種 BREW インターフェースの振る舞いをエミュレートするモジュール群です。

実際の BREW 携帯電話実機上での動きと少し異なる点があるので、注意が必要です。

      

BREW Logger とは?

BREW Logger とは?

BREW Logger とは、実機でデバッグ作業を行うときに使用するデバッグ出力ツールです。BREW AppLoader に同梱されています。

使用方法は、BREW AppLoader と同様、転送ケーブルで端末を接続している PC 上で使用します。

BREW Logger

ログ取得を開始後、キーイベントが発生したり、実行しているアプリ内で DBGPRINTF 関数が実行されたときに、ログが出力されます。

ログには、タイムスタンプ、メッセージ、ファイル名等が表示されます。

ただし、BREW Logger は DBGPRINTF とメッセージを完全に同期で出力しているわけではないので、端末がリセットされるようなバグが発生する場合は DBGPRINTF のメッセージをログに出力することができません。このような場合は、ILogger インターフェースを使用し、ファイルにログが出力されるようにします。

      

BREW アプリケーション ウィザード とは?

BREW アプリケーション ウィザード とは、対話式に項目を選択し、名前を設定するだけで BREW アプリの大枠となるソースコードを自動生成してくれるツールです。

      

BREW ヘッダーファイルとは?

BREW ヘッダーファイルには、BREW インターフェースの定義が含まれ、BREW アプリを開発する時に使われます。

それぞれのBREW インターフェースには対応するBREW ヘッダーファイルがあります。

BREW アプリのプログラムでは、そのアプリが使っているBREWインターフェースの定義を含む、BREW ヘッダーファイルをインクルードしなければいけません。

      

BREW ヘルパ関数とは?

BREW では ANSI 標準 C ライブラリが使えませんが、文字列処理、数学計算、メモリ操作など ANSI 標準 C ライブラリと同等の機能を持つ関数が、BREW ヘルパー関数として用意されています 。

BREW ヘルパ関数は、BREW インターフェースのインスタンス生成が不要です。

BREW SDKの AEEStdLib.hというヘッダで宣言されていますので、BREW ヘルパ関数を使うときは、このファイルをインクルードします。

※ BREW ヘルパ関数には、 ANSI 標準 C ライブラリにはない、BREW 特有の便利な関数も含まれます。

      

BRH ファイルとは?

BRH とは、BREW Resource Header の略で、BAR ファイルとセットで生成される C 言語 のヘッダーファイルです。

BREW 3.0 以前は、h 形式(ヘッダーファイル)で書き出されていました。BRH 形式のファイルと h 形式のファイルに内容的な差はありません。

      

BRI ファイルとは?

BRI とは BREW Resource Intermediate の略で、BREW リソースエディタ によって作成される リソース ファイル の コンパイル前の形式です。

BRI ファイルは、BREW 3.0 以前で使用されています。

BREW 3.0 以降では、BRX ファイルを使用します。

      

BRX ファイルとは?

BRX とは BREW Resource XML の略です。BRX ファイルは、 BREW リソースエディタ を用いて作成されるリソースファイルのコンパイル前の形式で、XML 形式で記述されています。

BRX ファイルは BREW 3.0 以降で使用されています。

      

DDB とは?

DDB (デバイス デペンデント ビットマップ) とは、 携帯電話の画面表示に利用されている低レベルなビットマップです。

DDB はハードウェア処理に適した形式をしている反面、 携帯電話のハードウェアごとに形式が異なる可能性があるという欠点があります。

また、DDB はデバイス ビットマップと呼ばれる事もあります。

      

DIB とは?

DIB (デバイス インディペンデント ビットマップ) とは、ハードウェアに依存しない形式のビットマップです。

DIB を利用することにより、異なる機種の携帯電話やパソコンとの間でビットマップの交換が可能になります。

      

EFS とは?

EFS とは、Embedded File System (組込みファイルシステム) の略称で、BREW 端末上のファイルシステムのことです。

      

ESNとは?

ESN とは、携帯電話の端末の持つ電話番号の 090 や 080 等、最初の 3 桁を 0x で置き換えた番号で、sig ファイルの取得に必要な情報です。例えば、090-1234-5678 という電話番号の ESN は、0x12345678 となります。

一般的に言われる ESN とは、Electric Serial Number の略で、携帯電話の端末が持つ 32 ビットの 2 進数で表される固有番号です。この番号の先頭の 8 ビット には製造事業者番号、残りの 24 ビット には端末のシリアルナンバーが入っています。ESN は、端末が通信を行う際に基地局に通知され、基地局は、通知された ESN が有効なものであるかを判断し、有効であれば通信を許可します。

      

Generate ARM Makefile とは?

      

Grinder ツールとは?

Grinder ツールとは、ランダムにさまざまなイベントを発生させ、 アプリケーションの安定性を調べるツールです。


このツールをQualcomm 社の Web サイトからダウンロードするには、 BREW デベロッパーになる必要があります。

      

IVocoder インタフェースとは?

IVocoder とは音声を録音するためのインターフェイスです。

      

MIF エディタとは?

MIF エディタとは、MIF ファイルの作成や編集をするためのエディタです。

主に、クラス ID BIDファイル)を設定したり、 特権レベルや著作権情報などを編集します。

      

MIF ファイルとは?

MIF ファイルとはメタ情報を記したファイルで、アプリ毎にひとつ必要です。

MIF ファイルに記される情報は、アプリの名前、アイコン、クラス ID、作成者、著作権、特権レベル( ネットワークやファイルなどセキュリティに関連するインターフェースの使用 ) などです。

MIF ファイルは BREW SDK に同梱されている MIF エディタ によって作成します。

※ 拡張子 " . mif " を除く MIF ファイルの名前は、拡張子 " . mod " を除くアプリの名前と同じでなければいけません。

      

MOD ファイルとは?

MOD とは Module の略で、コンパイル後の BREW の実行ファイルです。

コンパイラとしては、ARM コンパイラ が Qualcomm によって推奨されています。

      

NMEA Logger Tool とは?

GPS または GNSS デバイスで取得した GPS アクティビティを記録する BREW SDK ツールです。

このデータは、GPSを使用するアプリのシミュレーションを行う際に使用します。

      

PureVoice コンバータとは?

PureVoice コンバータとは、PCM (モノラル、8 kHz、16 ビット) WAV ファイルを QCP ファイルに変換する BREW SDK ツールです。 また、QCP ファイルを WAV ファイルに変換することも可能です。

詳細は、『BREW ユーティリティ ガイド』の「PureVoice コンバータの使用」を参照してください。

      

Q3D ファイル形式とは?

Q3D ファイル形式とは、Qualcomm 社独自の 3D モデリングデータを扱うファイル形式のことです。

      

Shim アプリとは?

Shim アプリとは、メーラー、ブラウザ、電話帳など携帯電話組込みのネイティブアプリとBREW アプリの連携を仲介してくれる BREWアプリです。

通常、端末にプレインストールされる BREW アプリです。

      

sig ファイルとは?

sig とは、Signeture の略で、BREW アプリを実機で実行するのに必要な認証ファイルです。アプリ名と ESN が記録されています。

Qualcomm の BREW Developer Extranet で発行する事ができますが、Extranet のアカウント取得は、Qualcomm から認定を受けた BREW ディベロッパー しか行えません。

      

Sleep モード とは?

Sleep モードとは、CPU の電圧が動作可能な最低電圧以下になっている状態のことです。

一般に、携帯電話では、CPU がアイドル状態になったときに Sleep モードにし、CPU 処理が始まったときに通常の電圧に戻す仕組みによって、消費電力が削減されるようになっています。

      

TRUE BREW テストとは?

TRUE BREW テストとは、BREW アプリやエクステンションの安全性を 確かめるために、Qualcommが行うテストです。BREW アプリは高速で、端末のメモリや記憶装置にアクセスが可能な反面、危険なアプリによってアドレス帳のデータが流出したり、大切なデータが勝手に削除されたりしないよう、検証は入念に行われます。更に、改ざんされたアプリの実行を防止する為、ユーザの端末上でアプリが実行される前に、端末が Qualcomm の行った電子署名の正当性を確認します。

TRUE BREW テストに合格したアプリのみ、ADS に登録され、キャリアによって配信され、ユーザの端末で実行する事ができます。

      

アプリケーションマネジャーとは?

アプリケーションマネジャーとは、端末にインストールされた BREW アプリを管理し、メニューを表示するBREW アプリです。

通常、端末にプレインストールされる BREW アプリです。

      

アプレットとは?

BREW アプリ( BREW アプリケーション ) のことです。

      

アプレット構造体とは?

BREW アプリは、 "アプレット構造体" と "イベント ハンドラ" のペアで構成されます。

アプレット構造体とは、 BREW アプリがデータを格納するための構造体で、そのアプレットでグローバルに使用する変数などを格納します。

BREW ウィザードが生成したコードでは、デフォルトで AEEApplet 構造体が使用されています。

      

イベント ハンドラとは?

イベントハンドラとは、BREW 実行環境 ( BREW AEE ) からのさまざまなメッセージ ( BREWでは「イベント」と呼びます) を受信し処理する関数です。

BREW では、アプリの開始・中断・再開・終了、キー入力、文字入力、キー押下、キー押下解除、アプリ固有などのイベントがあります。

BREW アプリは、BREW AEE から通知される各種イベントを処理するモジュール群から構成されます。

イベントハンドラのプロトタイプは次のようになります。

続きを読む »

      

エミュレーター とは?

BREW 搭載携帯電話の動作をエミュレートするツールです。BREW SDK に同梱されています。

BREW 開発の初期段階では BREW エミュレーターを使用して、動作確認を行ったりデバッグ作業を行います。

BREW 開発で、最も頻繁に使用するツールです。

エミュレーターと実機では、アプリの振る舞いが異なるところもあるので注意が必要です。

      

コオペラティブとは?

コオペラティブとは、プラットフォームであるシステム(OSなど)に関係なく、複数のタスクが互いにCPU制御を譲り合って、同時併行処理を実現する方式です。

      

ClassID とは?

ClassID とは、1 つ 1 つの BREW アプリケーションを識別するための 32 ビット値で、世界中で一意のID です。

ClassID は、アプリの配信時に必要となり、 正式には Qualcomm やキャリアに申請して発行してもらう必要があります。

開発時はどのような ClassID を使用してもかまいません。

※ 0x01010101 以下のClassID は、BREW の定義済みインタフェース用 ID として予約されています。通常、アプレット用の ClassID は 0x01010101 よりも大きな値になります。

      

クリッピングとは?

クリッピングとは、描画を行う際に、 特定の範囲からはみだした部分を表示しないようにする処理のことです。

例えば、ウィンドウの表示領域を超えて図形が描画された場合でも、 図形がウィンドウからはみだすことはなく、ウィンドウの境界で切り取られます。

これは、ウィンドウの表示領域の範囲でクリッピングされているためです。

      

コールバックとは?

DNS サーバーへの問い合わせは携帯電話側では DNS サーバーからの返答待ちの状態がしばらく続く処理です。

このような場合、BREW ではその処理が終了したときに自動的に呼び出される関数を登録します。

コールバック関数登録後、アプリは速やかに現在のイベント処理を完了して BREW に制御を戻し、次のイベントを待ちます。

この仕組みが、いわゆる「コールバック」です。

登録された関数はコールバック関数と呼ばれます。コールバック関数には返答が返ってきた後にする処理を記述します。

コールバック関数を登録する関数は目的によって異なります。

[ ソケット通信関連の例 ]

続きを読む »

      

タイマーとは?

タイマーとは、一定時間の経過後に関数を呼び出してくれる仕組みのことです。 アニメーションの表示など、ある一定のタイミングで処理を行いたい場合に使用します。 タイマーを使用するには、ISHELL_SetTimer 関数や ISHELL_SetTimerEx 関数を使用します。

たとえば、ISHELL_SetTimer 関数は以下のように定義されています。

ISHELL_SetTimer(
 IShell*   shell ,      // IShell インターフェイス
 int32     millisecs ,  // タイマーが経過時間をミリ秒で指定します。
 PFNNOTIFY fn,          // コールバック関数を指定します。
 void*     data         // コールバック関数に渡されるデータを指定します。
);

タイマーにより呼び出されるコールバック関数は、以下のプロトタイプをもつ必要があります。

// コールバック関数のプロトタイプ宣言
void TimerCallBack(void* pData);

SophiaFramework では、 SFBShell::SetTimer 関数や SFBShell::SetTimerEx 関数を使用します。 タイマーに登録するコールバック関数は、 void* 型の引数を持つ戻り値なしの関数を使用します。

【 コード例 】

続きを読む »

      

デバイス コンフィギュレータとは?

BREW デバイス コンフィギュレータとは、 エミュレーターで使用する デバイス ファイル の作成や編集をするためのエディタです。 このエディタを使用して、エミュレーターの見た目やキーイベント、画面サイズ、文字コードを設定し、 独自のデバイス ファイルを作成します。

詳細は、『BREW デバイス コンフィギュレータ ガイド』を参照してください。

※ BREW SDK 3.1 からはメーカー作成のデバイスファイルが用意されているため、デバイス コンフィギュレータは付属していません。

      

デバイス パックとは?

デバイス パックとは、BREW SDK 3.1 のエミュレーター用に拡張された デバイス ファイル のことです。

デバイス パックの作成は端末メーカーが行うので、通常、アプリの開発者が作成することはありません。そのため、BREW SDK 3.1 には、 デバイスコンフィギュレータ のようなデバイス パックを作成するツールはありません。

なお、最新のデバイス パックは、 BREW ディベロッパー エクストラネットから入手できます。

BREW ディベロッパー エクストラネットとは、BREW 認定デベロッパー専用の Web サイトです。

この Web サイト上では、一般の BREW 開発者に公開されていないサンプルや情報、 BREW テスト・商用化ユーティリティなどの開発ツールが公開されています。

      

デバイス ファイルとは?

デバイス ファイルとは、エミュレーターが携帯電話の動作をエミュレートするために使用するファイルです。

デバイス ファイルを編集することで、開発者はさまざまな携帯電話の動作をエミュレートでき、 品質テストを強化できます。

      

プリエンプティブとは?

プリエンプティブとは、プラットフォームであるシステム(OSなど)が複数のタスク間でのCPU制御を切り替えて、同時併行処理を実現する方式です。

      

メイクファイル ( Makefile ) とは?

コンパイラやリンカの設定、オブジェクトの依存関係など、コンパイル時に必要な情報を記した ".mak" の拡張子をもつテキストファイルです。

プログラムを実機向けにコンパイルするときに参照されます。

      

モバイルショップとは?

モバイルショップとは、BREW アプリをダウンロードする BREW アプリです。

通常、端末にプレインストールされる BREW アプリです。

      

リソース エディタとは?

BREW リソース エディタとは、BREW アプリケーションで使用するリソース ファイル (.bar ファイル) の作成や編集をするためのエディタです。

このエディタを使用して、文字列や画像などのデータを含むリソース ファイルを作成します。

詳細は、『BREW リソース エディタ ガイド』を参照してください。

      

リソース ファイルとは?

リソース ファイルとは、BREW アプリで使用する文字列や画像、ダイアログ、サウンドなどの データを 1 つのファイルにまとめたものです。

リソース ファイルは リソース エディタ を使用して作成します。

リソース ファイルを作成する方法については、 BREW SDK に付属の『BREW リソース エディタ ガイド』をご覧ください。

      

リソース ヘッダーファイルとは?

リソース ヘッダーファイル( _res.h ファイル もしくは BRH ファイル)とは、リソース ID を含むコンパイル用ヘッダーファイルです。

リソース ヘッダーファイルは、 リソース エディタ のメニューで、[作成]→[リソーススクリプトのコンパイル]を選択して実行することで自動生成されます。このとき、BREW アプレット リソースファイル( BAR ファイル )も一緒に自動生成されます。

リソース ヘッダーファイルの名前は、BREW 3.0 以前では アプリ名に " _res.h " を付けたものになり、BREW 3.0 以降は、拡張子が ".brh" になります。

例えば、HelloWorld アプリ なら、BREW 3.0 以前では " HelloWorld_res.h "、BREW 3.0 以降は "HelloWorld.brh" です。

      

ワイド文字とは?

ワイド文字とは、AECHAR 型の文字のことです。

 関連情報

      

共通鍵暗号方式とは?

共通鍵暗号方式とは、送信者と受信者が共通の鍵 (秘密鍵) を使用して、暗号化と復号化を行う暗号方式です。

代表的なものとしては、DES や RC4 があります。

      

公開鍵暗号方式とは?

公開鍵暗号方式とは、暗号化と復号化で別々の鍵を使用する暗号方式のことです。

この鍵のペア (対) のことを公開鍵 (Public Key)、秘密鍵 (Private Key) と呼び、 片方の鍵 (Public Key) を公開することからこの名が付いています。

代表的なものとしては、RSA があります。

      

即時エンコードと遅延エンコードとは?

即時エンコードと遅延エンコードとの違いは、スナップショット モードによって撮影された画像をファイルに出力するタイミングにあります。

続きを読む »

      

同期通信とは?

同期通信とは、クライアントがサーバーへリクエストを送信してからレスポンスを受信するまで待つ通信方式です。

ブロッキング通信とも言います。

      

非同期通信とは?

非同期通信とは、クライアントがサーバーへリクエストを送信してもレスポンスを待たずに次の処理を進める通信方式です。

サーバーサイドでレスポンスの準備ができた段階で、サーバーはクライアントにイベントを通知します。

そして、クライアントはサーバーからのレスポンスを受信します。

ノンブロッキング通信とも言います。