com.kddi.system
クラス PhoneState <Phase3>

java.lang.Object
  |
  +--com.kddi.system.PhoneState

public class PhoneState
extends java.lang.Object

このクラスは、移動機の動作モードと折りたたみ状態に関する状態取得や制御のための機能を提供します。


移動機の動作モード

移動機の動作モードには、通常動作モードとスリープモードの2つのモードがあります。 スリープモードは消費電力を節約するためのモードですが、内部処理速度が遅くなります。特に長時間動作する待ち受けアプリなどの場合は、このクラスの機能を使用して有効に消費電力を節約できます。

動作モードの状態遷移を図1に示します。

phonestate_mode.gif
図1. 動作モードの状態遷移

動作モードが通常動作モードからスリープモードへ変化する契機は以下の場合です。

また、スリープモードから通常動作モードへ変化する契機は以下の場合です。

クラスの使用方法

PhoneState クラスを使用するには、まず static メソッド getInstance() で唯一の PhoneState インスタンスを取得し、このインスタンスに対してメソッドを呼び出します。

以下にこのクラスが提供する個々の機能についてメソッドの使用方法を説明します。


動作モードの取得、設定

getOperationMode() で現在の動作モードを取得します。 setOperationMode() で動作モードを設定します。

このクラスで扱う動作モードは、移動機がJavaアプリケーションをどのモードで扱っているのかを示すものであり、通信処理中など実際にスリープできない状況では、 getOperationMode() で得たモードがスリープモードの場合でも移動機はスリープしていない場合があります。

動作モード変化の監視

動作モードが変化したことを伝えるイベントを待ち受けるには、 setOperationModeListener() メソッドでイベントリスナを登録します。

通常モードからスリープモードへ変化した場合は、イベントは発生しません。

折りたたみ状態の取得

getFlipState() で移動機の折りたたみ状態を取得します。 ストレートタイプの移動機では、折りたたみ状態は常に FLIP_OPEN となります。

折りたたみ状態変化の監視

折りたたみ状態が変化したことを伝えるイベントを待ち受けるには、 setFlipStateListener() メソッドでイベントリスナを登録します。


フィールドの概要
static int FLIP_CLOSE
          折りたたみ状態:折りたたまれています。
static int FLIP_OPEN
          折りたたみ状態:開いています。
static int NORMAL_MODE
          動作モード:動作モードとして、通常動作モードを示します。
static int SLEEP_MODE
          動作モード:動作モードとして、スリープモードを示します。
 
メソッドの概要
 int getFlipState()
          現在の折りたたみ状態を返します。
static PhoneState getInstance()
          システムで唯一の PhoneState インスタンスを返します。
 int getOperationMode()
          現在の動作モードを返します。
 void setFlipStateListener(FlipStateListener listener)
          折りたたみ状態の変化を監視するためのリスナを登録します。
 void setOperationMode(int mode)
          動作モードを設定します。
 void setOperationModeListener(OperationModeListener listener)
          動作モードの変化を監視するためのリスナを登録します。
 
クラス java.lang.Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

NORMAL_MODE

public static final int NORMAL_MODE
動作モード:動作モードとして、通常動作モードを示します。定数 0 が割り当てられています。

SLEEP_MODE

public static final int SLEEP_MODE
動作モード:動作モードとして、スリープモードを示します。 ただし、通信処理中などの場合は実際にはスリープしていない状況もあり得ます。 定数 1 が割り当てられています。

FLIP_OPEN

public static final int FLIP_OPEN
折りたたみ状態:開いています。またはストレートタイプです。定数 0 が割り当てられています。

FLIP_CLOSE

public static final int FLIP_CLOSE
折りたたみ状態:折りたたまれています。定数 1 が割り当てられています。
メソッドの詳細

getInstance

public static PhoneState getInstance()
システムで唯一の PhoneState インスタンスを返します。
戻り値:
PhoneState インスタンス

getOperationMode

public int getOperationMode()
現在の動作モードを返します。
戻り値:
動作モード。 SLEEP_MODE またはNORMAL_MODE

setOperationMode

public void setOperationMode(int mode)
動作モードを設定します。 通信処理中など、すぐにスリープできない状況で SLEEP_MODE に変更すると、getOperationMode() で得られるモードはすぐに SLEEP_MODE になりますが、 実際に移動機がスリープするのは通信処理後となります。
パラメータ:
mode - 動作モード。 SLEEP_MODE またはNORMAL_MODE
例外:
java.lang.IllegalArgumentException - 不正な mode が指定された場合に発生する

getFlipState

public int getFlipState()
現在の折りたたみ状態を返します。
戻り値:
折りたたみ状態
FLIP_OPEN:開いている、またはストレートタイプの移動機
FLIP_CLOSE: 折りたたまれている

setOperationModeListener

public void setOperationModeListener(OperationModeListener listener)
動作モードの変化を監視するためのリスナを登録します。 一度に登録できるリスナは一つだけです。最後に登録したものが有効になります。
パラメータ:
listener - リスナ。null の場合は登録解除。

setFlipStateListener

public void setFlipStateListener(FlipStateListener listener)
折りたたみ状態の変化を監視するためのリスナを登録します。 一度に登録できるリスナは一つだけです。最後に登録したものが有効になります。
パラメータ:
listener - リスナ。null の場合は登録解除。


Copyright 2003 Aplix Corporation. All rights reserved. Aplix Confidential and Restricted.