|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
Objectcom.docomostar.media.MediaManager
public final class MediaManager
メディアリソースデータの管理オブジェクトを定義します。
リソースの取得と利用時の振舞は以下のようになります。
MediaResource.use() メソッド、
MediaResource.unuse() メソッド呼び出しによる、
メモリ確保・解放に関する振る舞いをモデル化するために、
以下の 2 つの領域を定義します。
use() 、 unuse() 時のメモリ確保・解放に関する振る舞いは、 getImage() 、 getSound() 、 getAvatarData()、getMovie() メソッドの引数に、何を指定するかによって、下記のように異なります。 ただし、データによっては内部表現形式に変換する必要のないものがあります。 そのようなデータについては「オリジナルデータ領域」のみが存在するものとし、 下記の説明の「オリジナルデータ領域」に関する説明のみ有効とします。
MediaResource,
MediaImage,
MediaSound,
MediaPresenter,
AudioPresenter,
VisualPresenter,
NativeMoviePlayer,
MediaMovie| メソッドの概要 | |
|---|---|
static MediaImage |
createMediaImage(int width,
int height)
画像の幅・高さを指定して、 空のメディアイメージを生成します。 |
static MediaImage |
createMediaImage(int width,
int height,
boolean reusable)
画像の幅・高さ、PNG 画像に対する内部データ領域の再利用可否を指定して、 空のメディアイメージを生成します。 |
static MediaSound |
createMediaSound(int bytes)
サウンドのデータサイズ [bytes] を指定して、 空のメディアサウンドを生成します。 |
static AvatarData |
getAvatarData(byte[] data) [iアプリオプションAPI]
バイト配列を指定してアバターデータオブジェクトを取り出します。 |
static AvatarData |
getAvatarData(java.io.InputStream in) [iアプリオプションAPI]
ストリームを指定してアバターデータオブジェクトを取り出します。 |
static AvatarData |
getAvatarData(String location) [iアプリオプションAPI]
場所を指定してアバターデータオブジェクトを取り出します。 |
static MediaImage |
getImage(byte[] data)
バイト配列を指定してメディアイメージオブジェクトを取り出します。 |
static MediaImage |
getImage(java.io.InputStream in)
ストリームを指定してメディアイメージオブジェクトを取り出します。 |
static MediaImage |
getImage(String location)
場所を指定してメディアイメージオブジェクトを取り出します。 |
static MediaMovie |
getMovie(byte[] data)
バイト配列を指定してメディアムービーオブジェクトを取り出します。 |
static MediaMovie |
getMovie(java.io.InputStream in)
ストリームを指定してメディアムービーオブジェクトを取り出します。 |
static MediaMovie |
getMovie(String location)
場所を指定してメディアムービーオブジェクトを取り出します。 |
static MediaSound |
getSound(byte[] data)
バイト配列を指定してメディアサウンドオブジェクトを取り出します。 |
static MediaSound |
getSound(java.io.InputStream in)
ストリームを指定してメディアサウンドオブジェクトを取り出します。 |
static MediaSound |
getSound(String location)
場所を指定してメディアサウンドオブジェクトを取り出します。 |
static void |
use(MediaImage[] images,
boolean useOnce)
指定されたイメージを、 まとめて 利用可能にします。 |
static void |
use(MediaSound[] sounds,
boolean useOnce)
指定されたサウンドを、 まとめて 利用可能にします。 |
| クラス Object から継承されたメソッド |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| メソッドの詳細 |
|---|
public static final MediaImage getImage(String location)
location - 場所を指定します。
NullPointerException -
IllegalArgumentException -
IllegalArgumentException -
SecurityException -
MediaException - public static final MediaSound getSound(String location)
場所を指定してメディアサウンドオブジェクトを取り出します。 location 指定のフォーマット形式が正しくない場合、 引数指定誤りになります。
location - 場所を指定します。
IllegalStateException -
NullPointerException -
IllegalArgumentException -
IllegalArgumentException -
SecurityException -
MediaException - public static final AvatarData getAvatarData(String location) [iアプリオプションAPI]
場所を指定してアバターデータオブジェクトを取り出します。 location 指定のフォーマット形式が正しくない場合 、引数指定誤りになります。
端末によっては、このメソッドをサポートしていない場合があります。 その場合には、例外 UnsupportedOperationException が発生します。
location - 場所を指定します。
UnsupportedOperationException -
IllegalStateException -
NullPointerException -
IllegalArgumentException -
IllegalArgumentException -
SecurityException -
MediaException - public static final MediaMovie getMovie(String location)
場所を指定してメディアムービーオブジェクトを取り出します。
location 指定のフォーマット形式が正しくない場合 、引数指定誤りになります。
location - 場所を指定します。
IllegalStateException -
NullPointerException -
IllegalArgumentException -
IllegalArgumentException -
SecurityException -
MediaException - public static final MediaImage getImage(java.io.InputStream in)
in - 入力ストリームを指定します。
NullPointerException -
MediaException - public static final MediaSound getSound(java.io.InputStream in)
ストリームを指定してメディアサウンドオブジェクトを取り出します。 ストリームからは、メディアサウンドのファイルイメージを取り出せる必要があります。
in - 入力ストリームを指定します。
IllegalStateException -
NullPointerException -
MediaException - public static final AvatarData getAvatarData(java.io.InputStream in) [iアプリオプションAPI]
ストリームを指定してアバターデータオブジェクトを取り出します。 ストリームからは、アバターデータのファイルイメージを取り出せる必要があります。
端末によっては、このメソッドをサポートしていない場合があります。 その場合には、例外 UnsupportedOperationException が発生します。
in - 入力ストリームを指定します。
UnsupportedOperationException -
IllegalStateException -
NullPointerException -
MediaException - public static final MediaMovie getMovie(java.io.InputStream in)
ストリームを指定してメディアムービーオブジェクトを取り出します。 ストリームからは、メディアムービーのファイルイメージを取り出せる必要があります。
in - 入力ストリームを指定します。
IllegalStateException -
NullPointerException -
MediaException - public static final MediaImage getImage(byte[] data)
data - 入力バイト配列を指定します。
NullPointerException -
MediaException - public static final MediaSound getSound(byte[] data)
バイト配列を指定してメディアサウンドオブジェクトを取り出します。 バイト配列には、メディアサウンドのファイルイメージが格納されている必要があります。
data - 入力バイト配列を指定します。
IllegalStateException -
NullPointerException -
MediaException - public static final AvatarData getAvatarData(byte[] data) [iアプリオプションAPI]
バイト配列を指定してアバターデータオブジェクトを取り出します。 バイト配列には、アバターデータのファイルイメージが格納されている必要があります。
端末によっては、このメソッドをサポートしていない場合があります。 その場合には、例外 UnsupportedOperationException が発生します。
data - 入力バイト配列を指定します。
UnsupportedOperationException -
IllegalStateException -
NullPointerException -
MediaException - public static final MediaMovie getMovie(byte[] data)
バイト配列を指定してメディアムービーオブジェクトを取り出します。 バイト配列には、メディアムービーのファイルイメージが格納されている必要があります。
data - 入力バイト配列を指定します。
IllegalStateException -
NullPointerException -
MediaException -
public static final void use(MediaImage[] images,
boolean useOnce)
throws IterationAbortedException
指定されたイメージを、
まとめて利用可能にします。
第 1 引数で指定された全イメージについて「一度きりの利用」
とするかどうかを第 2 引数 useOnce で指定できます。
「一度きりの利用」についての詳細は
MediaResource.use(MediaResource, boolean)
の第 2 引数についての説明を参照してください。
メディアイメージの中には、 通信を行わないと利用可能に出来ないものも存在しますが、 引数の中にそのようなメディアイメージが指定されていても正しく動作します。
指定されたメディアイメージのうち、 1 つでも use
に失敗した場合には、例外 IterationAbortedException が発生します。
その場合、IterationAbortedException.getAbortedIndex()
によって、use に失敗したメディアイメージが格納されていた
配列のインデックス値が取得できます。
また、IterationAbortedException.getCause() によって、
use に失敗した原因となった例外オブジェクトを取得できます。
なお、以下の 2 点について注意してください。
IterationAbortedException.getCause() によって取得できる
「 use に失敗した原因となった例外オブジェクト」には、
use に失敗したメディアイメージを単独で MediaResource.use()
した場合に発生するであろう例外オブジェクトと同じものです。IterationAbortedException.getAbortedIndex()
で取得したインデックス値より小さい要素に格納されている全てのメディアイメージが利用可能状態になっているわけではありません。
このメソッド呼び出しにより、配列に格納されているメディアイメージが、 どのような順番で利用可能となるかは機種依存です。 このメソッド呼び出しからリターンした時点で、 全てのメディアイメージが利用可能状態になっていることのみが保証されています。
配列の中に、既に利用可能状態のメディアイメージが含まれている場合、 そのメディアイメージに対しては何も行われません。 また、配列中の null が指定された要素は単に無視され、 非 null の要素のみが処理対象となります。
images - 利用可能にしたいメディアイメージの集合を格納した配列を指定します。useOnce - 引数 images で指定した全イメージについて、
「一度きりの利用」としたい場合には true を、
そうでない場合には false を指定します。
NullPointerException -
IterationAbortedException -
public static final void use(MediaSound[] sounds,
boolean useOnce)
throws IterationAbortedException
指定されたサウンドを、
まとめて利用可能にします。
引数に指定できるのがメディアサウンドである事以外は、
use(MediaImage[], boolean) と同じです。
sounds - 利用可能にしたいメディアサウンドの集合を格納した配列を指定します。useOnce - 引数 sounds で指定した全サウンドについて、
「一度きりの利用」としたい場合には true を、
そうでない場合には false を指定します。
IllegalStateException -
NullPointerException -
IterationAbortedException -
public static final MediaImage createMediaImage(int width,
int height)
画像の幅・高さを指定して、 空のメディアイメージを生成します。
これによって生成されたメディアイメージの振る舞いは以下の通りです。
MediaImage.use(MediaResource, boolean)
により上書き可能な静止画(アニメ GIF と Flash® コンテンツを除く)です。MediaResource.unuse() してしまうと、
再度 use() した時点で例外が発生します。
MediaResource.setProperty(String, String)
呼び出しは常に ( 例外が発生しない条件であれば ) 無視され、
MediaResource.getProperty(String)
は、引数に何を指定して呼び出しても ( 例外が発生しない条件であれば )
null を返します。
このメソッドは、まだどの画像を使うかは決まっていないが、 必要な内部データ領域の最大サイズが分かっている場合に有用です。 例えば、ひとつのメディアイメージで、 画像 a, b, c を使い回す場合を考えます。 画像は a, b, c の順番で利用するが、 縦・横サイズの一番大きな画像は b である場合に、 以下のようなコードを書くことで、 サイズオーバになることなく、a, b, c 全ての画像を使い回すことが出来ます。
// 画像 b の縦・横サイズで内部データ領域を確保 MediaImage empty = MediaManager.createMediaImage(画像 b の縦・横サイズ); MediaImage a = MediaManager.getImage(画像 a のデータ); a.use(empty, true); // emptyで確保した内部データ領域を画像 a で上書き // ここで画像 a を利用する MediaImage b = MediaManager.getImage(画像 b のデータ); b.use(a, true); // a で使っていた内部データ領域を画像 b で利用 // ここで画像 b を利用する MediaImage c = MediaManager.getImage(画像 c のデータ); c.use(b, true); // b で使っていた内部データ領域を画像 c で利用 // ここで画像 c を利用する
[Star-2.0 以降]
このメソッドで作成したメディアイメージの内部データ領域を
PNG 画像で上書きすることはできません。PNG 画像に対して内部データ領域の再利用を行いたい場合は
createMediaImage(int, int, boolean)を利用して下さい。
width - 生成したい空のメディアイメージの幅を指定します。height - 生成したい空のメディアイメージの高さを指定します。
IllegalArgumentException -
MediaException -
public static final MediaImage createMediaImage(int width,
int height,
boolean reusable)
画像の幅・高さ、PNG 画像に対する内部データ領域の再利用可否を指定して、 空のメディアイメージを生成します。
引数 reusable に true を指定した場合、内部データ領域の再利用時に
PNG 画像で上書き可能となり、それ以外は createMediaImage(int, int) と同様に振る舞います。
false を指定した場合は、
createMediaImage(int, int) と同様に振る舞います。
このメソッドでは引数 reusable に true を指定すると、
α チャンネルの情報を保持するために createMediaImage(int, int) よりも多くの内部データ領域を確保します。
そのため、PNG 以外の画像フォーマットを利用するために空のメディアイメージを生成する場合には、
createMediaImage(int, int) を用いることを推奨します。
width - 生成したい空のメディアイメージの幅を指定します。height - 生成したい空のメディアイメージの高さを指定します。reusable - PNG 画像に対する内部データ領域の再利用可否を指定します。
IllegalArgumentException -
MediaException - public static final MediaSound createMediaSound(int bytes)
サウンドのデータサイズ [bytes] を指定して、 空のメディアサウンドを生成します。
これによって生成されたメディアサウンドの振る舞いは以下の通りです。
MediaResource.unuse() してしまうと、
再度 use() した時点で例外が発生します。
AudioPresenter
で再生しても音は鳴りませんが、再生自体は可能です。
その場合、
例外は発生せず、再生開始・停止・完了イベントも通常通り発生しますが、
再生時間は機種依存です。
MediaResource.setProperty(String, String)
呼び出しは常に ( 例外が発生しない条件であれば ) 無視され、
MediaResource.getProperty(String)
は、引数に何を指定して呼び出しても ( 例外が発生しない条件であれば )
null を返します。
このメソッドは、まだどのサウンドを使うかは決まっていないが、
必要な内部データ領域の最大サイズが分かっている場合に有用です。
具体的な使用例については createMediaImage(int, int)
を参考にしてください。
bytes - 生成したい空のメディアサウンドのデータサイズ [bytes]
を指定します。
IllegalStateException -
IllegalArgumentException -
MediaException -
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
NTT DOCOMO,INC.
本製品または文書は著作権法により保護されており、その使用、複製、再頒布および逆コンパイルを制限するライセンスのもとにおいて頒布されます。NTTドコモ(その他に許諾者がある場合は当該許諾者も含めて)の書面による事前の許可なく、本製品および関連する文書のいかなる部分も、いかなる方法によっても複製することが禁じられます。フォントを含む第三者のソフトウェアは、著作権法により保護されており、その提供者からライセンスを受けているものです。
Sun、Sun Microsystems、Java、J2MEおよびJ2SEは、米国およびその他の国における米国 Sun Microsystems,Inc.の商標または登録商標です。サンのロゴマークは、米国 Sun Microsystems, Inc.の登録商標です。
FeliCaは、ソニー株式会社が開発した非接触ICカードの技術方式です。FeliCaは、ソニー株式会社の登録商標です。
「iモード」、「iアプリ/アイアプリ」、「i-αppli」ロゴ、「DoJa」はNTTドコモの商標または登録商標です。
その他記載された会社名、製品名などは該当する各社の商標または登録商標です。