|
NTT DOCOMO and Hitachi Kokusai Electric Know-how & Confidential | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectcom.docomo_um.module.ModuleManager
public class ModuleManager
モジュール管理クラスです。
システムアップデート
システムアップデートはupdateSystem()をコールすることにより実行することが出来ます。
システムはアプリケーションに対して、アップデート開始要求、リセット要求、アップデート中断、の三つを通知します。
アプリケーションはsetModuleListener(ModuleListener)にて、リスナクラスを設定することでそれらの通知を受け取ることが出来ます。
設定されていない場合、アプリケーションはシステム側からの通知を受け取ることは出来ません。通知を受け取れない場合でも、システムはアップデートを継続します。
システムアップデートを行うには、手動アップデートと自動アップデートの二つの手段があります。手動アップデートはアプリケーション側からアップデートを実行します。
自動アップデートは、アプリケーション側がシステム側からアップデート開始要求の通知を受け取ることでアップデートを実行します。
〇 手動アップデート
updateSystem()をコールすることでアップデートを行うことが出来ます。アップデートは非同期で行われます。
システム側は、サーバに対してアップデートの有無を確認し、アップデートファイルをダウンロードします。
その過程で、アップデートの必要が無い、もしくはダウンロード中に通信が切断されたなど、継続が不能になった場合、
ModuleListener.onSystemUpdateAbort(int)をコールバックして、システムアップデート中断を通知します。
アップデートファイルのダウンロード完了後に、システムはModuleListener.onReset()をコールバックして、システムのリセット要求を通知します。
リセット要求の通知後、アプリケーションはreset()でシステムをリセットしてください。
ただし、reset()をコールしていない場合、システムは通知後10秒経過した時点で、システムをリセットします。
リセットを実行してシステムが起動すると、システムはアップデートを完了します。
〇 自動アップデート
システムは、サーバからシステムアップデートの要求を受け取った場合、ModuleListener.onSystemUpdate()をコールバックして、
システムアップデートの開始要求をアプリケーション側に通知します。
システムアップデートの開始要求の通知後、アプリケーションはupdateSystem()でシステムアップデートを実行してください。
ただし、updateSystem()をコールしていない場合、システムは通知後5秒経過した時点で、システムアップデートを実行します。
以降のシステムアップデートは手動アップデートと同様です。
留意事項
システムからの通知を検知しアプリケーションで適切な処理を行うために、setModuleListener(ModuleListener listener)を必ず呼び出す必要があります。
当該メソッドを呼ばずにシステムからのアプリケーションへ通知が行えない場合でも、システムは処理を続行します。
setModuleListener(ModuleListener listener)で登録したlistenerのModuleListener.onReset()
でシステムからのリセット要求が通知されます。システムからのリセット要求が通知されてから10秒経過してもreset()メソッドがコールされない場合、
システムは自動的にリセット処理を開始します。
setModuleListener(ModuleListener listener)で登録したlistenerのModuleListener.onSystemUpdate()
でシステムからのシステムアップデート要求が通知されます。システムからのシステムアップデート要求が通知されてから5秒経過してもupdateSystem()メソッドがコールされない場合、
自動的にシステムアップデートが開始されます。
| フィールドの概要 | |
|---|---|
static int |
SYSTEM_UPDATE_DOWNLOAD_COMPLETE
システムアップデートの実行状態の一つで、ダウンロード完了済みで、システムの書換えが未実行の状態を表します。 |
static int |
SYSTEM_UPDATE_DOWNLOADING
システムアップデートの実行状態の一つで、アップデートファイルをダウンロードしている状態を表します。 |
static int |
SYSTEM_UPDATE_IDLE
システムアップデートの実行状態の一つで、システムアップデートが実行されていない状態を表します。 |
static int |
SYSTEM_UPDATE_REWRITING
システムアップデートの実行状態の一つで、システムの書換え中の状態を表します。 |
static int |
SYSTEM_UPDATE_SENDING_COMPINFO
システムアップデートの実行状態の一つで、サーバへの完了通知送信中状態を表します。 |
| メソッドの概要 | |
|---|---|
void |
cancelSystemUpdate()
現在実行中のシステムアップデートをキャンセルします。 |
void |
changeApplication(Application application)
次回モジュール電源ON時に起動するアプリケーションを設定します。 |
java.util.List<Application> |
getApplicationList()
インストール済み(モジュール電源ON時に起動できる)のアプリケーション一覧を取得します。 |
ConnectionManager |
getConnectionManager()
有線通信 IF 接続管理クラスのインスタンスを生成します。 |
static ModuleManager |
getInstance()
モジュール管理クラスのインスタンスを生成します。 |
LocationProvider |
getLocationProvider(int method)
測位方式を指定して測位機能提供クラスのインスタンスを生成します。 |
PacketController |
getPacketController()
パケット通信制御クラスのインスタンスを生成します。 |
PINManager |
getPINManager()
PIN管理クラスのインスタンスを生成します。 |
int |
getSystemUpdateStatus()
システムアップデートの実行状態を取得します。 |
VoiceController |
getVoiceController()
音声通話制御クラスのインスタンスを生成します。 |
void |
reset()
リセットします。 |
void |
setModuleListener(ModuleListener listener)
リスナを登録します。 |
void |
turnOff()
アプリケーションを終了してモジュールの電源をOFFします。 |
void |
turnOff(java.util.Date bootTime)
アプリケーションを終了してモジュールの電源をOFFした後、指定した起動時刻にモジュールの電源をONしアプリケーションを起動します。 |
void |
updateSystem()
システムアップデートを実行します。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait |
| フィールドの詳細 |
|---|
public static final int SYSTEM_UPDATE_IDLE
getSystemUpdateStatus(),
定数フィールド値public static final int SYSTEM_UPDATE_DOWNLOADING
getSystemUpdateStatus(),
定数フィールド値public static final int SYSTEM_UPDATE_DOWNLOAD_COMPLETE
getSystemUpdateStatus(),
定数フィールド値public static final int SYSTEM_UPDATE_REWRITING
getSystemUpdateStatus(),
定数フィールド値public static final int SYSTEM_UPDATE_SENDING_COMPINFO
getSystemUpdateStatus(),
定数フィールド値| メソッドの詳細 |
|---|
public static ModuleManager getInstance()
throws ModuleException
このメソッドを複数回呼び出した場合には、同一インスタンスを返します。
ModuleException - 内部エラーによりインスタンスの取得に失敗した場合に発生します。
public PINManager getPINManager()
throws ExternalStatusException,
ModuleException,
DeviceException
このメソッドを複数回呼び出した場合には、同一インスタンスを返します。
ExternalStatusException - UIMが挿入されていない場合など、PIN管理クラスのインスタンス生成に失敗した場合に発生します。
ModuleException - 内部エラーにより処理が中断された場合に発生します。
DeviceException - デバイスの故障により、PIN管理クラスのインスタンス生成に失敗した場合に発生します。PINManagerpublic ConnectionManager getConnectionManager()
このメソッドを複数回呼び出した場合には、同一インスタンスを返します。
ConnectionManagerpublic LocationProvider getLocationProvider(int method)
このメソッドを複数回呼び出した場合には、指定した測位方式毎に同一インスタンスを返します。
method - 測位方式(LocationProvider.getAvailableLocationMethod() の戻り値)を指定します。
java.lang.IllegalArgumentException - 不正なmethod(LocationProvider.getAvailableLocationMethod()の戻り値以外)を指定した場合に発生します。LocationProvider,
LocationProvider.METHOD_AUTO,
LocationProvider.METHOD_STANDALONE,
LocationProvider.METHOD_STANDARDpublic VoiceController getVoiceController()
このメソッドを複数回呼び出した場合には、同一インスタンスを返します。
VoiceControllerpublic PacketController getPacketController()
このメソッドを複数回呼び出した場合には、同一インスタンスを返します。
PacketControllerpublic void setModuleListener(ModuleListener listener)
このインスタンスに登録できるリスナは1つだけです。 このメソッドを複数回呼出した場合、最後に登録したリスナだけが有効です。 null を指定すると、リスナの登録を削除します。
listener - 登録するリスナを指定します。ModuleListener
public void turnOff()
throws ModuleException
turnOff(Date bootTime) に nullを指定した場合の動作と同じです。
ModuleException - 内部エラーにより処理が中断された場合に発生します。
public void turnOff(java.util.Date bootTime)
throws ModuleException
bootTimeに過去の日付を指定した場合は即座に起動します。
bootTime - 起動時刻を指定します。電源OFF後に電源ONさせない場合は、nullを指定します。
ModuleException - 内部エラーにより処理が中断された場合に発生します。
public void reset()
throws ModuleException
以下の場合に、このメソッドを呼び出します。
ModuleListener.onReset() によって、システムからリセット要求があった場合
ModuleException - 内部エラーにより処理が中断された場合に発生します。ModuleListener.onReset()
public int getSystemUpdateStatus()
throws ModuleException
ModuleException - 内部エラーにより処理が中断された場合に発生します。SYSTEM_UPDATE_IDLE,
SYSTEM_UPDATE_DOWNLOADING,
SYSTEM_UPDATE_DOWNLOAD_COMPLETE,
SYSTEM_UPDATE_REWRITING,
SYSTEM_UPDATE_SENDING_COMPINFO
public void updateSystem()
throws ModuleException,
DeviceException,
ExternalStatusException
以下の場合に、このメソッドを呼び出します。
ModuleListener.onSystemUpdate() によって、
システムからソフトウェアのアップデート要求があった場合本メソッドの呼び出し時にシステムアップデートが実行されている場合は何もしません。
ModuleException - 内部エラーによりシステムアップデートが実行できなかった場合に発生します。
DeviceException - デバイスの故障により、正常に実行出来なかった場合に発生します。
ExternalStatusException - UIMが挿入されていない場合など、システムアップデートが実行できなかった場合に発生します。ModuleListener.onSystemUpdate()
public void cancelSystemUpdate()
throws DeviceException,
ModuleException
本メソッドの呼び出し時にシステムアップデートが実行されていなければ何もしません。
システムの状態によっては、本メソッドをコールしてもシステムアップデートをキャンセルできない場合があります。
ModuleException - キャンセルできなかった場合に発生します。
DeviceException - デバイスの故障により、正常に実行出来なかった場合に発生します。public java.util.List<Application> getApplicationList()
インストールを行った場合、
このメソッドの戻り値となるアプリケーションの一覧も更新されます。
ApplicationInstallManager.updateApplicationArea(FFSFile) メソッドにより現在動作中のアプリケーションが更新された場合、
新たにインストールされたアプリケーションが先頭の要素に入ります。
public void changeApplication(Application application)
throws ModuleException,
DeviceException
reset() メソッドをコールしてリセットする、
または、turnOff()、turnOff(Date) メソッドをコールして一度電源をOFFして起動し直す必要があります。
アプリケーションのインストールを行った場合、
インストール以前に取得したアプリケーションインスタンスは、本メソッドの引数に指定できません。
アプリケーションのインストール以前に取得したApplicationインスタンスを本メソッドの引数に設定した場合、例外が発生します。
引数applicationはgetApplicationList()で取得したアプリケーションを指定してください。
application - 次回電源ON時に起動するアプリケーションを指定します。
java.lang.NullPointerException - applicationがnullの場合に発生します。
java.lang.IllegalArgumentException - アプリケーションのインストールよりも前に生成されたApplicationインスタンスが指定された場合に発生します。
ModuleException - 内部エラーにより処理が中断した場合に発生します。
DeviceException - デバイスの故障により、次回電源ON時に起動するアプリケーションの設定に失敗した場合に発生します。getApplicationList(),
reset(),
turnOff(),
turnOff(Date)
|
Copyright © 2013 NTT DOCOMO, INC. and Hitachi Kokusai Electric Inc. All Rights Reserved. | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||