com.docomostar.system
クラス MessageAgent

Object
  上位を拡張 com.docomostar.system.MessageAgent
すべての実装されたインタフェース:
MailConstants

public final class MessageAgent
extends Object
implements MailConstants

メッセージStar アプリのネイティブ機能にアクセスする手段を提供します。

メッセージの取得および送信機能を提供します。

メッセージ機能では、 メッセージの取得や送信を行うクラスと メッセージそのものを表すクラスが区別されています。 このクラスはメッセージの取得や送信を行いますが、 メッセージそのものはMessageクラスのサブクラス またはMessageDraftクラスのオブジェクトとして表されます。

このメッセージStar アプリに割り当てられた 受信フォルダ、送信フォルダ、未送信フォルダのみに対して、 メッセージの取得などの操作が可能です。 各フォルダ中のメッセージは、 送受信日時の新しい順にソートされており、 最新のメッセージが先頭にあります。
各メッセージにはそれぞれのフォルダ中で一意であり、 そのフォルダから削除されるまで変更されることのないIDが付与されています。 getIds(int, boolean)メソッドにより、 取得するフォルダを指定して、各メッセージのIDを取得することができます。 getMessage(int, int)メソッドにより、 取得するフォルダおよびメッセージのIDを指定して メッセージを取得することができます。

取得されたメッセージ(MessageReceivedまたは MessageSentオブジェクト)には、 サブジェクト(通常文字列)、 メッセージ本文(通常文字列)、 送受信日時(通常文字列として取得可能)、 既読・未読情報、 宛先アドレス(通常文字列またはXString)、 差出人アドレス(XString)、 差出人アドレスの電話帳エントリのID、 メッセージ Star アプリ固有のバイナリデータが設定されています。

メッセージを送信するためには、 send(String, String[], String, byte[])メソッドまたは send(String, XString, String, byte[])メソッドを直接呼び出すか、 MessageDraftオブジェクトに対して宛先等を設定して send(MessageDraft)メソッドを呼び出します。 送信の成否にかかわらず、 送信に使用したMessageDraftオブジェクトの状態は変化しません。

MessageDraftクラスのコンストラクタ MessageDraft(Message, boolean)により、 受信フォルダから取得したメッセージから返信用メッセージを作ることができます。
また、同じくMessageDraftクラスのコンストラクタ MessageDraft(Message, boolean)により、 送信および未送信フォルダから取得したメッセージから 再送信用のメッセージを作ることができます。
送信および未送信フォルダから取得したメッセージは、 send(MessageSent)メソッドにより、 直接再送信することもできます。
未送信フォルダから取得したメッセージの送信が成功した場合、 元の未送信メッセージは削除されます。

空文字列の宛先アドレスは、メッセージStar アプリのメッセージの仕様に準拠していないとみなされます。

メッセージ本文中には、 改行文字 ( 単独の "¥r"、単独の "¥n"、 または "¥r¥n")や、 タブ文字 ("¥t") を含めることが可能です。

send メソッドが呼び出された直後に以下が行われ、その後に送信処理が行われます。

ミニマムスペック:
[Star-1.5 (2011年春以降発売モデル) まで] ミニマムスペックでは、5件までの宛先アドレスに送信することができます。
[Star-2.0 以降] ミニマムスペックでは、50件までの宛先アドレスに送信することができます。

導入されたバージョン:
Star-1.0
関連項目:
Message, MessageSent, MessageReceived, MessageDraft

フィールドの概要
 
インタフェース com.docomostar.system.MailConstants から継承されたフィールド
ADDRESS_DOMAIN, ADDRESS_FULL, ADDRESS_USER, RECEIVED, SENT, UNSENT
 
メソッドの概要
static void delete(int type, int id)
           メッセージを削除します。
static int[] getIds(int type, boolean unseen)
          メッセージフォルダ中のメッセージのIDを取得します。
static Message getMessage(int type, int id)
          メッセージを取得します。
static int getRemainingBytes(MessageDraft message) [iアプリオプションAPI]
          メッセージ全体に設定できる残りバイト数を返します。
static boolean isSeen(int id)
          受信メッセージの既読・未読情報を取得します。
static boolean send(MessageDraft message)
           メッセージを送信します。
static boolean send(MessageSent message)
           メッセージを再送信します。
static boolean send(String subject, String[] addresses, String body, byte[] data)
           メッセージを送信します。
static boolean send(String subject, XString address, String body, byte[] data)
           メッセージを送信します。
static void setSeen(int id, boolean seen)
          受信フォルダのメッセージの既読・未読情報を設定します。
static int size(int type, boolean unseen)
          メッセージフォルダ中のメッセージの数を取得します。
 
クラス Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

メソッドの詳細

size

public static int size(int type,
                       boolean unseen)
メッセージフォルダ中のメッセージの数を取得します。 受信フォルダに対しては、未読メッセージのみの数の取得が可能です。

パーミッションとしてメッセージiアプリが許可されている トラステッドStar アプリのみこのメソッドを呼び出すことができます。

パラメータ:
type - 取得するメッセージのフォルダ種別を指定します。 RECEIVEDSENTUNSENT のいずれかを指定します。
unseen - 受信フォルダからのメッセージ数の取得において、 未読メッセージのみの数を取得する場合、true を指定します。 false を指定した場合には、すべてのメッセージの数が取得されます。 送信および未送信フォルダに対しては、この引数は無視されます。
戻り値:
フォルダ中のメッセージ数を返します。
例外:
IllegalArgumentException -
引数 type の値が不正な場合に発生します。
SecurityException -
メールロックにより、 指定フォルダへのアクセスが拒否された場合に発生します。
SecurityException -
ネイティブ独自のセキュリティ設定により、 指定フォルダへのアクセスが拒否された場合に発生します。
IllegalStateException -
UIM 読み込み中の場合に発生します。

getIds

public static int[] getIds(int type,
                           boolean unseen)
メッセージフォルダ中のメッセージのIDを取得します。 受信フォルダに対しては、すべてのメッセージのIDの取得だけでなく、 未読メッセージのみのIDの取得が可能です。

パーミッションとしてメッセージiアプリが許可されている トラステッドStar アプリのみこのメソッドを呼び出すことができます。

パラメータ:
type - 取得するメッセージのフォルダ種別を指定します。 RECEIVEDSENTUNSENT のいずれかを指定します。
unseen - 受信フォルダからのメッセージIDの取得において、 未読メッセージのみのIDを取得する場合、true を指定します。 false を指定した場合には、すべてのメッセージのIDが取得されます。 送信および未送信フォルダに対しては、この引数は無視されます。
戻り値:
フォルダ中のすべてのメッセージのIDを返します。 先頭から送受信日時の新しい順番に、 メッセージのIDが設定されています。 メッセージが存在しない場合には、長さ 0 の配列が返ります。 返される配列は、このオブジェクトが内部で保持している配列のコピーです。
例外:
IllegalArgumentException -
引数 type の値が