Links
UJML Language Reference
ファイルの実行

UJMLではヒストリースタックを使用してアプリケーションのロードとアンロードを管理しています。

UJMLはコンパイルされたバイトコードをメモリに読み込み、処理することによりアプリケーションを実行します。 関連項目: アプリケーションファイルバイトコードファイル。 UJMLアプリケーションはデバイスのOS上で実行します。実際の実行方法は、デバイスによって異なります。 UJMLアプリケーションから他のUJMLアプリケーションを実行することも可能です。 その場合、実行中のアプリケーションをアンロードした後、新たなアプリケーションがメモリに読み込まれ実行されます。 

UJMLアプリケーションでは、自分自身をアンロードすることも可能です。 デバイスのOSから起動されているアプリケーションがアンロードされた場合は、制御がUJMLからデバイスに移ります。 しかし実行中のアプリケーションが他のアプリケーションによって起動された場合、1つ前のアプリケーションが 再読み込みされ実行されます。 この仕組みは「ヒストリースタック」を通じて実現されています。

アプリケーションのヒストリースタック

UJMLは現在のセッション中で実行されたプログラムのリストを保持しています。 このリストはお皿のように互いに積み重なっています。新しく読み込まれたアプリケーションは山の一番上に乗せられます。 アンロードされたアプリケーションは山からはずされます。 アプリケーションのアンロード時に他のアプリケーションが下にある場合、下位のアプリケーションが読み込まれて実行されます。 スタック上のアプリケーションの全てがアンロードされると、セッションは終了し、制御がUJMLからデバイスに返されます。 

スタックから再読み込みされたアプリケーションは初期状態から実行されます。 アプリケーションの実行状態を保持するには、アプリケーションの状態を保存・復帰させる仕組みを実装しなければなりません。 実装方法の1つにプロパティバッグ関数とUNLOADイベントを使用する方法があります。 関連項目: プロパティバッグ関数UNLOAD event

アプリケーション制御関数

UJMLはアプリケーションの実行とアンロードを行い、ヒストリースタックの細やかな制御を可能にする関数を豊富に用意しています。

Function 
説明 
ヒストリースタックに対する効果。 
新たなアプリケーションファイルを読み込み、実行する。 
実行中のアプリケーションをスタックに積む。 
新たなアプリケーションファイルを読み込み、実行する。 
スタック上のアプリケーションを新たなアプリケーションに置き換える。 
実行中のアプリケーションの実行を停止し、アンロードする。パーティションファイルから呼ばれた場合も有効。 
スタックから実行中のアプリケーションを降ろす。 
アプリケーションファイルから呼ばれた場合、実行中のアプリケーションの実行を停止し、アンロードする。 パーティションファイルから呼ばれた場合はそのパーティションをアンロードする(その場合、実行中のアプリケーションが続行する)。 関連項目: パーティションファイルファイルのリンク。 
スタックから実行中のアプリケーションを降ろす。
備考: パーティションから呼ばれた場合、スタック操作は発生しない。 

次の例では、変数の参照先のURLのアプリケーションを実行しています。 このサンプルコードはapprunner.ujml サンプルコードの一部です。

_run(url);

 

次の例では、実行中のアプリケーションをアンロードしています。 このサンプルコードはvisualelements.ujml サンプルコードの一部です。

_unload();
Copyright (c) 2000-2005 by UIEvolution, Inc. All rights reserved.
この項目に関するフィードバックをお寄せください。 Send feedback!