|
||||||||||
前のパッケージ 次のパッケージ | フレームあり フレームなし |
参照:
説明
インタフェースの概要 | |
MailConstants | メールに関連する定数を定義するインタフェースです。 |
MessageFolderListener | メッセージフォルダのリスナを定義します。 |
PhoneBookConstants | 電話帳に関連する定数を定義するインタフェースです。 |
クラスの概要 | |
Alarm | 携帯電話のネイティブのアラーム機能にアクセスする手段を提供します。 |
ApplicationStore | 携帯電話のネイティブの i アプリデータ管理機能にアクセスする手段を提供します。 |
AvatarStore | 携帯電話のネイティブのアバターデータ管理機能にアクセスする手段を提供します。 |
Bookmark | 携帯電話のネイティブのブックマーク管理機能にアクセスする手段を提供します。 |
CallRecord | 携帯電話のネイティブの音声発着信履歴機能にアクセスする手段を提供します。 |
CertificateStore | 携帯電話のネイティブの証明書機能にアクセスする手段を提供します。 |
DataBoxFolder | データ BOX のフォルダを管理する手段を提供します。 |
DecomailDraft | 送信(または保存)用のデコメールを定義します。 |
DecomailTemplateStore | 携帯電話のネイティブのデコメールテンプレート管理機能にアクセスする手段を提供します。 |
DTVParameter | デジタルテレビアプリケーションから渡される連携パラメータを定義します。 |
DTVSchedule | 携帯電話のネイティブの (デジタルテレビ)視聴/録画予約スケジューラ機能にアクセスする手段を提供します。 |
DTVScheduleParam | デジタルテレビ予約スケジュールの新規登録用のパラメータを定義します。 |
ImageStore | 携帯電話のネイティブの画像データ管理機能にアクセスする手段を提供します。 |
LocationRecord | 携帯電話のネイティブの位置履歴データ管理機能にアクセスする手段を提供します。 |
ネイティブのメーラから取得したメールを定義します。 | |
MailAgent | 携帯電話のネイティブのメール機能にアクセスする手段を提供します。 |
MailDraft | 送信(または保存)用のメールを定義します。 |
Message | ネイティブから取得したメッセージiアプリのメッセージの基底クラスを定義します。 |
MessageAgent | メッセージiアプリのネイティブ機能にアクセスする手段を提供します。 |
MessageDraft | メッセージiアプリの送信用メッセージを定義します。 |
MessageReceived | ネイティブから取得したメッセージiアプリの受信メッセージを定義します。 |
MessageSent | ネイティブから取得したメッセージiアプリの送信メッセージを定義します。 |
MovieStore | 携帯電話のネイティブの動画データ管理機能にアクセスする手段を提供します。 |
OwnerProfile | マイプロフィールのデータを管理する実装クラスです。 |
PhoneBook | 携帯電話のネイティブの電話帳管理機能にアクセスする手段を提供します。 |
PhoneBookGroup | 携帯電話のネイティブの電話帳グループ管理機能にアクセスする手段を提供します。 |
PhoneBookParam | 電話帳データの新規登録用のパラメータを定義します。 |
Schedule | 携帯電話のネイティブのスケジューラ機能にアクセスする手段を提供します。 |
SoundStore | 携帯電話のネイティブのサウンドデータ管理機能にアクセスする手段を提供します。 |
Toruca | トルカデータを定義します。 |
TorucaStore | 携帯電話のネイティブのトルカデータ管理機能にアクセスする手段を提供します。 |
例外の概要 | |
InterruptedOperationException | 競合条件などにより、 ユーザインタフェース操作がユーザの意図によらず終了させられた場合に発生する例外です。 |
MailException | メールの送受信に関連する例外です。 |
StoreException | ネイティブの管理データへのアクセス例外を定義します。 |
電話帳機能やメール機能など、 携帯電話ネイティブに備わっている機能を利用するクラスを定義します。
携帯電話ネイティブに備わっている機能に関する用語を以下に示します。
用語 意味 デジタルテレビ
地上デジタルテレビジョン放送。 デジタルテレビアプリケーション
地上デジタルテレビジョン放送のワンセグサービス視聴アプリケーション。
このパッケージには、 携帯電話のネイティブのデータにアクセスできるクラスがいくつか含まれています。 これらのクラスがネイティブのデータにアクセスする際の共通の振る舞いを、 大原則として、以下のように規定します。
なお、ネイティブのデータの種類によっては、 この規定と矛盾する規定をしているものがありますが、 その場合は各クラス、各メソッドに記述されている規定が優先します。 また、メール機能やメッセージ i アプリ機能を提供する
MailAgent
クラスMail
クラスMailDraft
クラスMessageAgent
クラスMessage
クラスとそのサブクラスMessageDraft
クラスには、この規定は一切適用されません。
[DoJa-5.0 (903i) 以降]
デコメール機能とマイプロフィール機能を提供する以下についても、
大原則の規定は一切適用されません。
DecomailDraft
クラスOwnerProfile
クラス
Java アプリケーションからは、 各ネイティブのデータの種類(電話帳、発着信履歴、...)毎に、 そのエントリの集合が存在しているかのように見えます。 例えば、電話帳の場合は、1 つのメモリ番号に登録されているデータ (ふりがな、名前、電話番号、...)が 1 つのエントリとなり、 そのエントリの集合が電話帳データということになります。
これらのエントリには、それぞれ所属している集合の中で一意で、 かつ永続的な ID (エントリ ID) が振られており、 このエントリ ID を指定することで、 ネイティブのデータの特定のエントリを参照することができます。
DoJa API では、各ネイティブのデータの種類毎に、1つのクラスを用意しています。 クラスそのものはエントリの集合を表し、 そのクラスのインスタンスは、その集合に所属する各エントリを表しています。 すなわち、エントリの集合に対する操作を行う以下のメソッドは、 クラスメソッド(スタティックメソッド)として提供されています。
getEntry
メソッドselectEntry
メソッドaddEntry
メソッド
エントリの集合を表す各クラスには、そのエントリの個々のデータ
(電話帳エントリの場合には、ふりがな、電話番号など)
へアクセスするメソッドがインスタンスメソッドとして用意されています。
なお、個人情報のような security sensitive なデータは
XObject
のサブクラスのオブジェクトとして取得され、
これらのデータを携帯電話外へ持ち出すことは出来ません。
ネイティブのデータの種類毎に、各エントリには一意な ID がつけられています。 すなわち、電話帳の異なるエントリ同士が 同じ ID であることは有りませんが、 電話帳のあるエントリとブックマークのあるエントリは、 同じエントリ ID である可能性があります。
エントリ ID は、同じエントリであれば常に同じ ID です。 例えば、参照するアプリケーションによって、 同じエントリに対して異なる ID が与えられることはありません。 また、エントリ ID をスクラッチパッド等に保存しておけば、 アプリケーションを再起動した後でも、そのエントリ ID を元に、 同一のエントリへアクセスできることが保証されています。 ただし、ユーザがそのエントリを編集、上書きした場合に、 編集前とは異なるエントリ ID が付与されることも有ります。
エントリ ID は、メモリ番号などの、 ネイティブ機能においてユーザが確認できる番号とは別のものであり、 その生成規則は機種依存です。
区間 [-256, 0] に属する整数は、 有効なエントリ ID として使用されることは有りません。 登録の失敗を示すなどの、特別な用途に使用されます。
selectEntry
、getEntry
)
時の振る舞い
エントリは、
selectEntry()
、getEntry(int)
メソッドにより取得することができます。
selectEntry
メソッドは、
ユーザの選択によりエントリを取得するメソッドです。
このメソッドを呼び出すと、
アプリケーションがサスペンドしてネイティブのユーザインタフェース
(電話帳の場合は電話帳選択画面)が起動し、取得するエントリをユーザが選択します。
選択後、アプリケーションはレジュームし、
戻り値として、そのエントリが格納されているオブジェクト
(電話帳の場合は PhoneBook
オブジェクト)
が得られます。
getEntry(int)
メソッドは、
ユーザの選択によらず、エントリ ID を指定してエントリを取得するメソッドです。
アプリケーションがサスペンドすることなく、
指定された ID のエントリが取得できます。
selectEntryId
)
時の振る舞い
エントリ ID のみを
selectEntryId()
メソッドにより取得することができます。
このメソッドを呼び出すと、
アプリケーションがサスペンドしてネイティブのユーザインタフェース
(画像データの場合は画像データ選択画面)が起動し、取得するエントリをユーザが選択します。
選択後、アプリケーションはレジュームし、
戻り値として、そのエントリの ID が得られます。
このメソッドによりデータBOX内のデータのエントリ ID を取得する場合、 取得できるエントリ ID の種類は、エントリ取得時 に取得できるエントリの種類とは異なります。
addEntry
)時の振る舞い
エントリの新規登録は、addEntry
メソッドにより行うことができます。
このメソッドを呼び出すと、
アプリケーションがサスペンドして
ネイティブのユーザインタフェース(電話帳の場合は電話帳登録画面)が起動します。
登録画面には addEntry
メソッドの引数に指定した内容が反映されています。
ユーザは、このネイティブのユーザインタフェースを通して、
登録内容をそのままあるいは変更して登録することができます。
登録後、アプリケーションはレジュームし、
戻り値から登録されたデータのエントリ ID が得られます。
このエントリ ID を getEntry(int)
メソッドの引数に指定すると、
登録したエントリを取得することができます。
登録するデータの内容によって、
引数の異なる複数の addEntry
メソッドが提供されることがあります。
たとえば、PhoneBook
クラスの場合、電話帳グループを名前で指定する
PhoneBook.addEntry(String, String,
String[], String[], String)
メソッド、電話帳グループを ID で指定する
PhoneBook.addEntry(String, String,
String[], String[], int)
メソッドなどがあります。
ネイティブのデータの種類によっては、
新規登録専用のオブジェクトが定義されていることがあります
(電話帳の場合は PhoneBookParam
)。
新規登録用オブジェクトは、コンストラクタにより生成することができ、
そのオブジェクトを addEntry
の引数に渡すことで、
エントリの新規登録を行うことができます。
エントリ登録時にパラメータとして渡される文字列の扱いは以下の通りです。
ここで「取り除く」「削除」などと書かれている処理は、全て
addEntry
時に行われ、
新規登録用オブジェクトに対する設定時にはそのような処理は行われません。
また、
「登録できない」とは、
対応するネイティブの登録画面でユーザが入力できないことを表します。
登録時に渡された文字列が、 実装が想定している範囲から外れている文字を含んでいる場合は、 それらの文字を全て取り除くか、 全て空白 (0x20) に置換するか、 全て '?' (0x3F) に置換した後にネイティブの登録機能に渡されます (空白そのものが登録できない文字である場合に全て空白に置換されることはありません。 同様に、'?' そのものが登録できない文字列である場合に全て '?' に置換されることはありません)。 この時に例外は発生しませんが、 削除された結果が空文字列("")になった場合には、 最初から空文字列が指定された場合と同様に振る舞います。
なお、この大原則では、改行文字を含む制御文字 (0x00〜0x1F、0x7F) は、 常に「登録できない文字」として取り扱われます。
登録時に渡された文字列をデフォルトエンコーディングで評価した場合のバイト数が、 実装が想定している最大バイト数を超えている場合は、 超過分の文字が削除された後にネイティブの登録機能に渡されます。 これにより例外は発生しません。
その項目に何も入力されていない状態で登録画面が表示されます。 ただし、その登録機能にとって必須の項目に対して null や空文字列が指定された場合には、 どのように登録処理がなされるのかは機種依存ですが、 ネイティブの登録処理の動作に従います。いずれの場合でも例外は発生しません。
|
||||||||||
前のパッケージ 次のパッケージ |