Objectcom.nttdocomo.ui.IApplication
アプリケーションの雛型を提供します。 アプリケーションは必ずこのクラスを継承して作成しなければなりません。
このクラスは通常のアプリケーションのライフサイクルを定義します。
また、JAM からダウンロード元の URL や ADF のパラメータを取得することができます。
[DoJa-2.0 以降]
JAM から起動形態を取得することができます。
また、他のアプリケーションから起動された際のパラメータを取得したり、
他のアプリケーションにパラメータを渡して起動したりすることができます。
[DoJa-3.0 (505i) 以降]
アプリケーションがサスペンドした場合、どのような理由でサスペンドしたか、また、
サスペンド中に音声着信などの事象が発生したかどうかを取得することができます。
また、トラステッドiアプリケーションでは、
JAM に対してアプリケーションの自動起動時刻の設定および取得を行うことができます。
アプリケーションがサスペンドした場合、サスペンド状態から戻った直後に
resume() メソッドが呼ばれます。
カレントフレームが存在する場合は、
レジュームイベントがそのフレームに投げられたあとに
resumeメソッドが呼ばれます。
ただし、アプリケーションプログラマはそれらの順序を意識したコーディングをしてはなりません。
このクラスを使用してアプリケーションクラスを作成する場合の注意を以下に示します。
public MyApp extends IApplication {
public void start() {
...
}
}
public MyApp2 extends IApplication {
public MyApp2() {
...
}
public void start() {
...
}
}
ミニマムスペック:
| フィールドの概要 | |
static int |
LAUNCH_AS_LAUNCHER
iアプリをランチャモードで起動することを示す起動種別です(=4)。 |
static int |
LAUNCH_BROWSER
ブラウザを起動してページを表示することを示す起動種別です(=1)。 |
static int |
LAUNCH_BROWSER_SUSPEND [iアプリオプションAPI]
ブラウザを起動してページを表示することを示す起動種別です(=13)。 |
static int |
LAUNCH_IAPPLI
iアプリを連携モードで起動することを示す起動種別です(=3)。 |
static int |
LAUNCH_MAIL_LAST_INCOMING
最新の未読メールの閲覧画面を起動することを示す起動種別です(=10)。 |
static int |
LAUNCH_MAIL_RECEIVED
メールの受信フォルダを起動することを示す起動種別です(=7)。 |
static int |
LAUNCH_MAIL_SENT
メールの送信フォルダを起動することを示す起動種別です(=8)。 |
static int |
LAUNCH_MAIL_UNSENT
メールの未送信フォルダを起動することを示す起動種別です(=9)。 |
static int |
LAUNCH_MAILMENU
メールメニュー(受信メール、送信メール、メール設定、センター問い合わせ等のメニュー)を起動することを示す起動種別です(=5)。 |
static int |
LAUNCH_SCHEDULER
スケジューラを起動することを示す起動種別です(=6)。 |
static int |
LAUNCH_VERSIONUP
JAMを起動して実行中のiアプリの自動バージョンアップを行うことを示す起動種別です(=2)。 |
static int |
LAUNCHED_AFTER_DOWNLOAD
ダウンロード直後(通常起動の1回目)に起動されたことを表す起動タイプです(=1)。 |
static int |
LAUNCHED_AS_CONCIERGE
待ち受けアプリケーションとして起動されたことを表す起動タイプです(=3)。 |
static int |
LAUNCHED_AS_ILET
ダウンロード即起動アプリとしてブラウザから起動されたことを表す起動タイプです(=9)。 |
static int |
LAUNCHED_FROM_BROWSER
ブラウザからの連携によって起動されたことを表す起動タイプです(=5)。 |
static int |
LAUNCHED_FROM_EXT
外部インタフェースから起動されたことを表す起動タイプです(=4)。 |
static int |
LAUNCHED_FROM_FELICA_ADHOC [iアプリオプションAPI]
非接触IC 外部 R/W からの連続データ転送によって起動されたことを表す起動タイプです。 |
static int |
LAUNCHED_FROM_IAPPLI
iアプリからの連携(連携モード)によって起動されたことを表す起動タイプです(=7)。 |
static int |
LAUNCHED_FROM_LAUNCHER
iアプリからの連携(ランチャモード)によって起動されたことを表す起動タイプです(=8)。 |
static int |
LAUNCHED_FROM_LOCATION_IMAGE [iアプリオプションAPI]
データ BOX に保存されている位置情報埋め込み画像から起動されたことを表す起動タイプです(=14)。 |
static int |
LAUNCHED_FROM_LOCATION_INFO [iアプリオプションAPI]
位置情報から起動されたことを表す起動タイプです(=13)。 |
static int |
LAUNCHED_FROM_MAILER
メーラからの連携によって起動されたことを表す起動タイプです(=6)。 |
static int |
LAUNCHED_FROM_MENU
通常のメニューから起動されたことを表す起動タイプです(=0)。 |
static int |
LAUNCHED_FROM_MENU_FOR_DELETION [iアプリオプションAPI]
ユーザがこのアプリケーションを削除するために、 メニューから起動されたことを表す起動タイプです(=20)。 |
static int |
LAUNCHED_FROM_PHONEBOOK [iアプリオプションAPI]
電話帳から起動されたことを表す起動タイプです(=15)。 |
static int |
LAUNCHED_FROM_TIMER
タイマ起動されたことを表す起動タイプです(=2)。 |
static int |
LAUNCHED_FROM_TORUCA [iアプリオプションAPI]
トルカから起動されたことを表す起動タイプです(=18)。 |
static int |
LAUNCHED_MSG_RECEIVED
メッセージiアプリの受信フォルダから起動されたことを表す起動タイプです(=10)。 |
static int |
LAUNCHED_MSG_SENT
メッセージiアプリの送信フォルダから起動されたことを表す起動タイプです(=11)。 |
static int |
LAUNCHED_MSG_UNSENT
メッセージiアプリの未送信フォルダから起動されたことを表す起動タイプです(=12)。 |
static int |
SUSPEND_BY_IAPP
サスペンドの理由を表す属性の一つで、 アプリケーションからのメソッド呼び出しを契機としてサスペンドされたことを表します(=2)。 |
static int |
SUSPEND_BY_NATIVE
サスペンドの理由を表す属性の一つで、 アプリケーション以外からの割り込みによりサスペンドされたことを表します(=1)。 |
static int |
SUSPEND_CALL_IN
サスペンド理由やサスペンド中の事象を表す属性の一つで、 着信履歴に残る音声/テレビ電話/PTT呼着信があったことを表します(=0x0400)。 |
static int |
SUSPEND_CALL_OUT
サスペンド理由やサスペンド中の事象を表す属性の一つで、 発信履歴に残る音声/テレビ電話/PTT呼発信があったことを表します(=0x0200)。 |
static int |
SUSPEND_MAIL_RECEIVE
サスペンド理由やサスペンド中の事象を表す属性の一つで、 着信記録が残るメール着信 (ショートメール着信や SMS 着信も含みます) があったことを表します(=0x1000)。 |
static int |
SUSPEND_MAIL_SEND
サスペンド理由やサスペンド中の事象を表す属性の一つで、 発信記録が残るメール発信 (ショートメール発信や SMS 発信も含みます) があったことを表します(=0x0800)。 |
static int |
SUSPEND_MESSAGE_RECEIVE
サスペンド理由やサスペンド中の事象を表す属性の一つで、 着信記録が残るメッセージ(リクエスト、フリー)着信があったことを表します(=0x2000)。 |
static int |
SUSPEND_MULTITASK_APPLICATION
サスペンド中の事象を表す属性の一つで、 マルチタスク機能によって他のアプリケーションに切り替えられたことを表します(=0x8000)。 |
static int |
SUSPEND_PACKETIN
サスペンド理由やサスペンド中の事象を表す属性の一つで、 パケット着信(プッシュ)があったことを表します(=0x0100)。 |
static int |
SUSPEND_SCHEDULE_NOTIFY
サスペンド理由やサスペンド中の事象を表す属性の一つで、 スケジューラからの通知があったことを表します(=0x4000)。 |
| コンストラクタの概要 | |
IApplication()
アプリケーションは、直接このクラスのインスタンスを生成してはなりません。 |
|
| メソッドの概要 | |
void |
clearMoved() [iアプリオプションAPI]
このアプリケーションが端末外部から移されたことを示す情報に false を設定します。 |
String[] |
getArgs()
アプリケーションの起動パラメータを取得します。 |
static IApplication |
getCurrentApp()
カレントのアプリケーションオブジェクトを取得します。 |
ScheduleDate |
getLaunchTime(int index)
このアプリケーションの自動起動時刻を取得します。 |
int |
getLaunchType()
アプリケーションの起動形態を取得します。 |
String |
getParameter(String name)
ブラウザなどのネイティブアプリケーションまたはiアプリから起動された場合の パラメータを取得します。 |
PushManager |
getPushManager() [iアプリオプションAPI]
リモート制御におけるプッシュ機能の管理オブジェクトを取得します。 |
String |
getSourceURL()
アプリケーションがダウンロードされた元の URL を取得します。 |
int |
getSuspendInfo()
直前のサスペンドの理由およびそのサスペンド中に起こった事象を取得します。 |
boolean |
isMoved() [iアプリオプションAPI]
このアプリケーションが端末外部から移されたかどうかを調べます。 |
boolean |
isMovedFromOtherTerminal() [iアプリオプションAPI]
このアプリケーションの移動で、移動先と移動元の端末が異なるかどうかを調べます。 |
void |
launch(int target,
String[] args)
Javaアプリケーションから他のアプリケーションを起動します。 |
void |
resume()
アプリケーションがサスペンド状態から戻った直後に呼ばれるメソッドです。 |
void |
setLaunchTime(int index,
ScheduleDate date)
このアプリケーションの自動起動時刻を設定します。 |
abstract void |
start()
アプリケーションが起動したら呼ばれるメソッドです。 |
void |
terminate()
アプリケーションを終了するための唯一のメソッドです。 |
| クラス Object から継承したメソッド |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
public static final int LAUNCHED_FROM_MENU
public static final int LAUNCHED_AFTER_DOWNLOAD
public static final int LAUNCHED_FROM_TIMER
[DoJa-3.0 (505i) 以降]
ADFのLaunchAtキーによる起動に加えて、
iアプリメニューでの設定による自動起動、
setLaunchTime(int, ScheduleDate)
メソッドでの設定による起動の場合も含みます。
public static final int LAUNCHED_AS_CONCIERGE
public static final int LAUNCHED_FROM_EXT
public static final int LAUNCHED_FROM_BROWSER
ブラウザからの連携によって起動されたことを表す起動タイプです(=5)。
public static final int LAUNCHED_FROM_MAILER
メーラからの連携によって起動されたことを表す起動タイプです(=6)。
public static final int LAUNCHED_FROM_IAPPLI
getLaunchType(),
定数フィールド値public static final int LAUNCHED_FROM_LAUNCHER
getLaunchType(),
定数フィールド値public static final int LAUNCHED_AS_ILET
getLaunchType(),
定数フィールド値public static final int LAUNCHED_MSG_RECEIVED
getLaunchType(),
定数フィールド値public static final int LAUNCHED_MSG_SENT
getLaunchType(),
定数フィールド値public static final int LAUNCHED_MSG_UNSENT
getLaunchType(),
定数フィールド値public static final int LAUNCHED_FROM_LOCATION_INFO [iアプリオプションAPI]
位置情報から起動されたことを表す起動タイプです(=13)。
から起動された場合に、この起動タイプとなります。
この起動タイプで起動しているアプリケーションでは、
getParameter(String)
を用いて、起動元から渡された位置情報を取得することができます。
getLaunchType(),
定数フィールド値public static final int LAUNCHED_FROM_LOCATION_IMAGE [iアプリオプションAPI]
データ BOX に保存されている位置情報埋め込み画像から起動されたことを表す起動タイプです(=14)。
この起動タイプで起動しているアプリケーションでは、
getParameter(String)
を用いて、起動元から渡された位置情報や、
起動元の位置情報埋め込み画像 ID を取得することができます。
ImageStore.getEntry(int) の引数に、
取得した位置情報埋め込み画像 ID を指定することで、
起動元の位置情報埋め込み画像データへアクセスすることができます。
getLaunchType(),
定数フィールド値public static final int LAUNCHED_FROM_PHONEBOOK [iアプリオプションAPI]
電話帳から起動されたことを表す起動タイプです(=15)。
この起動タイプで起動しているアプリケーションでは、
getParameter(String)
を用いて、起動元から渡された位置情報や、
起動元の電話帳エントリ ID を取得することができます。
PhoneBook.getEntry(int) の引数に、
取得した電話帳エントリ ID を指定することで、
起動元の電話帳エントリへアクセスすることができます。
getLaunchType(),
定数フィールド値public static final int LAUNCHED_FROM_TORUCA [iアプリオプションAPI]
トルカから起動されたことを表す起動タイプです(=18)。
getLaunchType(),
定数フィールド値public static final int LAUNCHED_FROM_FELICA_ADHOC [iアプリオプションAPI]
この起動タイプで起動しているアプリケーションは、 アドホック通信のデータ転送先アプリケーションとして呼び出されたことを意味します。
getLaunchType(),
定数フィールド値public static final int LAUNCHED_FROM_MENU_FOR_DELETION [iアプリオプションAPI]
FeliCa 機能を利用するアプリケーション(IC アプリ)のみ、 この起動タイプで起動される可能性があります。 この起動タイプで起動しているアプリケーションは、 アプリケーション削除のための最終処理(FeliCa IC チップ内のエリア/サービス削除、 コンテンツサービスの退会手続きetc) を行なうために呼び出されたことを意味します。 この起動タイプで起動されたアプリケーションは、 すみやかに最終処理を行なって下さい。
getLaunchType(),
定数フィールド値public static final int SUSPEND_BY_NATIVE
getSuspendInfo(),
定数フィールド値public static final int SUSPEND_BY_IAPP
getSuspendInfo(),
定数フィールド値public static final int SUSPEND_PACKETIN
getSuspendInfo(),
定数フィールド値public static final int SUSPEND_CALL_OUT
getSuspendInfo(),
定数フィールド値public static final int SUSPEND_CALL_IN
getSuspendInfo(),
定数フィールド値public static final int SUSPEND_MAIL_SEND
getSuspendInfo(),
定数フィールド値public static final int SUSPEND_MAIL_RECEIVE
getSuspendInfo(),
定数フィールド値public static final int SUSPEND_MESSAGE_RECEIVE
getSuspendInfo(),
定数フィールド値public static final int SUSPEND_SCHEDULE_NOTIFY
getSuspendInfo(),
定数フィールド値public static final int SUSPEND_MULTITASK_APPLICATION
サスペンド中の事象を表す属性の一つで、
マルチタスク機能によって他のアプリケーションに切り替えられたことを表します(=0x8000)。
マルチタスク機能を搭載している FOMA 端末でのみ使用されます。
getSuspendInfo(),
定数フィールド値public static final int LAUNCH_BROWSER
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、args[0]には
ブラウザで表示するページの URL を表す String オブジェクトを指定します。
[DoJa-3.0 (505i) 以降]
指定したURLが255バイトを超える場合、
URLのスキームがhttpまたはhttpsでない場合、
IllegalArgumentExceptionが発生します。
バイト数はデフォルトのエンコーディングで評価します。
[DoJa-4.0 (901iS) まで]
待ち受け実行時にブラウザを起動しようとすると IllegalStateException が発生します。
launch(int, String[]),
定数フィールド値public static final int LAUNCH_VERSIONUP
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、argsに指定された値は無視されます。nullを指定してもかまいません。
launch(int, String[]),
定数フィールド値public static final int LAUNCH_IAPPLI
iアプリに引数を渡すことができます。
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、
args[0]に起動先アプリケーションのADFのURLを指定し、
args[1]以降に、
起動先アプリケーションに渡すパラメータの名前と値の組を順番に指定します。
n 番目のパラメータの名前を args[n*2+1] に、
その値を args[n*2+2] に指定します。
args[1]以降の偶数個の連続した非nullの値を
パラメータの名前と値の組として認識し、それ以外は無視します。
アプリケーションに渡すパラメータ(名前と値の組)は最大16個であり、
パラメータの名前と値の両方を含めて、
その合計のバイト数は255バイトまでです。
パラメータの数が16を超える場合(args[1]以降に非nullの値が34以上連続してある場合)、
またはその合計バイト数が255バイトを超える場合、
IllegalArgumentExceptionが発生します。
バイト数はデフォルトのエンコーディングで評価します。
同じ名前のパラメータが複数ある場合、
起動先アプリケーションでは最初に現われたものが取得できます。
起動先アプリケーションでは、
getParameter(String)
メソッドの引数にパラメータの名前を指定することにより、
そのパラメータの値を取得できます。
指定したURLのアプリケーションが存在しない場合、
SecurityExceptionが発生します。
launch(int, String[]),
定数フィールド値public static final int LAUNCH_AS_LAUNCHER
iアプリに引数を渡すことはできません。
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、
args[0]に起動先アプリケーションのIDを文字列で指定します。
指定されたIDの文字列は、
Integer.parseInt(String)メソッドにより評価されます。
Integer.parseInt(String)メソッドがNumberFormatExceptionをスローする場合、
このメソッドもNumberFormatExceptionをスローします
(NumberFormatExceptionはIllegalArgumentExceptionのサブクラスです)。
指定したIDのアプリケーションが存在しない場合、
アプリケーションがサスペンドしてから、
アプリケーションを強制終了させるか尋ねるダイアログが出ます。
強制終了させられなかった場合、
アプリケーションはレジュームし、
SecurityException が発生します。
launch(int, String[]),
定数フィールド値public static final int LAUNCH_MAILMENU
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、
argsに指定された値は無視されます。nullを指定してもかまいません。
この起動種別は、
パーミッションとしてネイティブメーラの利用が許可されているトラステッドiアプリケーションからのみ使用可能です。
パーミッションとしてネイティブメーラの利用が許可されていないアプリケーションから使用された場合、
アプリケーションは強制終了します。
[DoJa-3.5 (900i) 以降]
PDC 端末では、launch メソッドでのユーザ確認で起動を許可された場合、
アプリケーションを終了してメーラを起動します。
FOMA 端末では、launch メソッドでのユーザ確認で起動を許可された場合、
アプリケーションをサスペンドしてメーラを起動します。
メーラの終了後、アプリケーションはレジュームします。
launch(int, String[]),
定数フィールド値public static final int LAUNCH_SCHEDULER
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、argsにnullを指定すると端末の日付でスケジューラが起動します。
null以外を指定した場合の動作は機種依存です。
この起動種別は ADF に AccessUserInfo
キーを指定したアプリケーションからのみ使用可能です。
ADF に AccessUserInfo
キーを指定していないアプリケーションから使用された場合、
SecurityException が発生します。
launchメソッドによりスケジューラの起動に成功しても、
アプリケーションは終了せず、サスペンドします。
スケジューラの終了後、レジュームします。
launch(int, String[]),
定数フィールド値public static final int LAUNCH_MAIL_RECEIVED
メールの受信フォルダを起動することを示す起動種別です(=7)。
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、
argsに指定された値は無視されます。nullを指定してもかまいません。
この起動種別は、
パーミッションとしてネイティブメーラの利用が許可されているトラステッドiアプリケーションからのみ使用可能です。
パーミッションとしてネイティブメーラの利用が許可されていないアプリケーションから使用された場合、
アプリケーションは強制終了します。
launch メソッドでのユーザ確認で起動を許可された場合、 アプリケーション終了せず、サスペンドしてメーラを起動します。 メーラの終了後、アプリケーションはレジュームします。
launch(int, String[]),
定数フィールド値public static final int LAUNCH_MAIL_SENT
メールの送信フォルダを起動することを示す起動種別です(=8)。
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、
argsに指定された値は無視されます。nullを指定してもかまいません。
この起動種別は、
パーミッションとしてネイティブメーラの利用が許可されているトラステッドiアプリケーションからのみ使用可能です。
パーミッションとしてネイティブメーラの利用が許可されていないアプリケーションから使用された場合、
アプリケーションは強制終了します。
launch メソッドでのユーザ確認で起動を許可された場合、 アプリケーション終了せず、サスペンドしてメーラを起動します。 メーラの終了後、アプリケーションはレジュームします。
launch(int, String[]),
定数フィールド値public static final int LAUNCH_MAIL_UNSENT
メールの未送信フォルダを起動することを示す起動種別です(=9)。
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、
argsに指定された値は無視されます。nullを指定してもかまいません。
この起動種別は、
パーミッションとしてネイティブメーラの利用が許可されているトラステッドiアプリケーションからのみ使用可能です。
パーミッションとしてネイティブメーラの利用が許可されていないアプリケーションから使用された場合、
アプリケーションは強制終了します。
launch メソッドでのユーザ確認で起動を許可された場合、 アプリケーション終了せず、サスペンドしてメーラを起動します。 メーラの終了後、アプリケーションはレジュームします。
launch(int, String[]),
定数フィールド値public static final int LAUNCH_MAIL_LAST_INCOMING
最新の未読メールの閲覧画面を起動することを示す起動種別です(=10)。
メーラを起動して、最新の未読メール(MailAgent.getLastIncoming()
メソッドで取得できるメール)を閲覧する画面を表示します。
最新の未読メールが存在しない場合は、何もせずに戻ります。
launch(int target, String[] args)
メソッドのtarget引数として利用できます。
その場合、
argsに指定された値は無視されます。nullを指定してもかまいません。
この起動種別は、
パーミッションとしてネイティブメーラの利用が許可されているトラステッドiアプリケーションからのみ使用可能です。
パーミッションとしてネイティブメーラの利用が許可されていないアプリケーションから使用された場合、
アプリケーションは強制終了します。
launch メソッドでのユーザ確認で起動を許可された場合、 アプリケーション終了せず、サスペンドしてメーラを起動します。 メーラの終了後、アプリケーションはレジュームします。
launch(int, String[]),
MailAgent.getLastIncoming(),
定数フィールド値public static final int LAUNCH_BROWSER_SUSPEND [iアプリオプションAPI]
launch(int target, String[] args)
メソッドの target 引数として利用できます。
その場合、args[0] には
ブラウザで表示するページの URL を表す String オブジェクトを指定します。
この起動種別は、端末によってはサポートされない場合があります。 サポートしていない端末の場合、 launch() メソッドは UnsupportedOperationException をスローします。
この起動種別を launch() メソッドに指定した場合の振る舞いは、
以下の点を除いて、LAUNCH_BROWSER を指定した場合と同じです。
| コンストラクタの詳細 |
public IApplication()
| メソッドの詳細 |
public final String[] getArgs()
public final String getParameter(String name)
name - 取得するパラメータの名前を指定します。
public final String getSourceURL()
public final int getLaunchType()
public static final IApplication getCurrentApp()
public abstract void start()
public void resume()
public final void terminate()
public final void launch(int target,
String[] args)
Javaアプリケーションから他のアプリケーションを起動します。
このメソッドが呼ばれると現在実行中のJavaアプリケーションはサスペンドされ、 ユーザ確認のダイアログが表示されます。 ユーザが他のアプリケーションの起動を許可した場合、 基本的には現在実行中の Java アプリケーションを終了して 他のアプリケーションを起動しますが、 起動するアプリケーションの種類によっては Java アプリケーションをサスペンドしたまま他のアプリケーションを起動します。 詳細は、引数 target に指定する値の説明を参照してください。 特に言及されていない場合は、 現在実行中の Java アプリケーションはサスペンドせずに終了します。
ユーザが起動を許可しなかった場合は、
このメソッドから戻ってJavaアプリケーションの実行を継続します。
[DoJa-2.x のみ]
利用可能なアプリケーションの種類は、
LAUNCH_BROWSERです。
これ以外を指定した場合、IllegalArgumentException をスローします。
[DoJa-3.0 (505i) のみ]
利用可能なアプリケーションの種類は、
LAUNCH_BROWSER、
LAUNCH_VERSIONUP、
LAUNCH_IAPPLI、
LAUNCH_AS_LAUNCHER、
LAUNCH_MAILMENU、
LAUNCH_SCHEDULER
のいずれかです。
これ以外を指定した場合、IllegalArgumentException をスローします。
ただし、LAUNCH_SCHEDULER
は端末によってはサポートされないことがあります。
詳細はLAUNCH_SCHEDULERを参照して下さい。
[DoJa-3.0 (505iS) 以降]
FOMA 端末における、
利用可能なアプリケーション、ならびに、引数targetに指定可能な値は、
のいずれかです。
targetにこれらの値を指定した場合の振る舞いや、argsの意味については、
それぞれの値の説明を参照して下さい。
当該箇所に特に言及されていない場合には、
期待されている長さより長い配列をargsに指定しても、
配列中の冗長な部分は無視され、通常通りに振る舞います。
target に上記以外の値を指定した場合、
IllegalArgumentException をスローします。LAUNCH_BROWSER)
LAUNCH_VERSIONUP)
LAUNCH_IAPPLI、
LAUNCH_AS_LAUNCHER)
LAUNCH_MAILMENU、
LAUNCH_MAIL_RECEIVED、
LAUNCH_MAIL_SENT、
LAUNCH_MAIL_UNSENT、
LAUNCH_MAIL_LAST_INCOMING)
LAUNCH_SCHEDULER)
なお、LAUNCH_SCHEDULER
は端末によってはサポートされないことがあります。
詳細は、
LAUNCH_SCHEDULER を参照して下さい。
[DoJa-5.0 (903i) 以降]
上記に加えて、引数 target に以下の値を指定可能です。
また、LAUNCH_BROWSER_SUSPEND)
LAUNCH_SCHEDULER は、全ての端末によってサポートされます。
target - 起動するアプリケーションの種類を指定します。args - 起動するアプリケーションに渡す引数を指定します。
引数の意味は起動するアプリケーションによって異なります。
UnsupportedOperationException -
[DoJa-4.1 (902iS) まで]
スケジューラ機能が未サポートで、かつ、
引数 target に LAUNCH_SCHEDULER が指定された場合に発生します。
UnsupportedOperationException -
[DoJa-5.0 (903i) 以降]
ブラウザ起動(iアプリはサスペンド)が未サポートで、かつ、
引数 target に LAUNCH_BROWSER_SUSPEND が指定された場合に発生します。
IllegalArgumentException -
引数 target に不正な値が指定された場合に発生します。
NullPointerException -
[DoJa-3.0 (505i) 以降]
argsに引数の指定が必要な場合に、
argsや必要なargsの要素がnullである場合に発生します。
IllegalArgumentException - 引数argsに不正な値が指定された場合に発生します。
SecurityException - [DoJa-4.0 (901i) 以降]
ロック機能などのネイティブ独自のセキュリティ設定により、
指定されたアプリケーションが起動できない場合に発生します。
IllegalStateException - (ブラウザ起動、メーラ起動以外)
[DoJa-3.0 (505i) 以降]
ダウンロード即起動アプリから呼び出された場合に発生します。
IllegalStateException -
[DoJa-3.0 (505i) 以降]
待ち受け実行時の非活性化状態で呼び出された場合に発生します。
IllegalStateException - (ブラウザ起動)
[DoJa-4.0 (901iS) まで]
待ち受け実行時の活性化状態にブラウザを起動しようとした場合に発生します。
[DoJa-4.1 (902i) 以降] この例外は発生しません。
SecurityException - (ブラウザ起動)
[DoJa-5.0 (903i) 以降]
このアプリケーションが、
IC アプリケーション(のサービス)削除画面から起動したものである
(getLaunchType() の戻り値が
LAUNCHED_FROM_MENU_FOR_DELETION である)
場合に発生します。
SecurityException - (ブラウザ起動)
ADFにUseBrowserキーの指定がない場合に発生します。
SecurityException - (iアプリ起動[連携モード])
[DoJa-5.0 (903i) 以降]
このアプリケーションが、
IC アプリケーション(のサービス)削除画面から起動したものである
(getLaunchType() の戻り値が
LAUNCHED_FROM_MENU_FOR_DELETION である)
場合に発生します。
SecurityException - (iアプリ起動[連携モード])
[DoJa-3.0 (505i) 以降]
異なるホストから提供されている起動先アプリケーションを指定した場合に発生します。
具体的には、引数に指定されたURLのホスト名(FQDN)と、
このアプリケーションのADFのURLのホスト名(FQDN)が一致していない場合に発生します。
SecurityException - (iアプリ起動[連携モード])
[DoJa-3.0 (505i) 以降]
ADFにLaunchAppキーの指定が無い場合に発生します。
SecurityException - (iアプリ起動[連携モード])
[DoJa-3.0 (505i) 以降]
起動先のアプリケーションとして自分自身を指定した場合に発生します。
SecurityException - (iアプリ起動[連携モード])
[DoJa-3.0 (505i) 以降]
起動先のアプリケーションが存在しない場合に発生します。
[DoJa-3.5 (900iC) 以降]
FOMA 端末において、
UIM 内情報による実行制限がかけられているアプリケーションを指定した場合も含みます。
[DoJa-3.0 (506iC)
以降 ただし、DoJa-3.5 (900i) を除く]
リモート制御により停止状態となっているアプリケーションを指定した場合も含みます。
SecurityException - (iアプリ起動[連携モード])
[DoJa-3.0 (505i) 以降]
トラステッドiアプリケーションが、
一般(非トラステッド)iアプリケーションを指定した場合に発生します。
SecurityException - (iアプリ起動[連携モード])
[DoJa-5.0 (903i) 以降]
起動先のアプリケーションが IC
アプリケーションであるにもかかわらず、
IC カード内の空きブロック数が不足している場合に発生します。
SecurityException - (iアプリ起動[ランチャモード])
[DoJa-5.0 (903i) 以降]
このアプリケーションが、
IC アプリケーション(のサービス)削除画面から起動したものである
(getLaunchType() の戻り値が
LAUNCHED_FROM_MENU_FOR_DELETION である)
場合に発生します。
SecurityException - (iアプリ起動[ランチャモード])
[DoJa-3.0 (505i) 以降]
ADFにLaunchAppキーの指定が無い場合に発生します。
SecurityException - (iアプリ起動[ランチャモード])
[DoJa-3.0 (505i) 以降]
起動先のアプリケーションとして自分自身のIDを指定した場合に発生します。
SecurityException - (iアプリ起動[ランチャモード])
[DoJa-3.0 (505i) 以降]
起動先アプリケーションとして指定したIDに該当するアプリケーションが無い場合に発生します。
[DoJa-3.5 (900iC) 以降]
FOMA 端末において、
UIM 内情報による実行制限がかけられているアプリケーションの
ID を指定した場合も含みます。
[DoJa-3.0 (506iC)
以降 ただし、DoJa-3.5 (900i) を除く]
リモート制御により停止状態となっているアプリケーションの ID
を指定した場合も含みます。
SecurityException - (iアプリ起動[ランチャモード])
[DoJa-3.0 (505i) 以降]
ADFのLaunchByAppキーで許可されていないアプリケーションを起動先アプリケーションとして指定してした場合に発生します。
SecurityException - (iアプリ起動[ランチャモード])
[DoJa-5.0 (903i) 以降]
起動先のアプリケーションが IC
アプリケーションであるにもかかわらず、
IC カード内の空きブロック数が不足している場合に発生します。
SecurityException - (スケジューラ起動)
ADFのAccessUserInfoキーの指定が無い場合に発生します。
IllegalStateException - (メーラ起動)
[DoJa-4.0 (901i) 以降] FOMA端末で、UIM読み込み中の場合に発生します。
SecurityException - (自動バージョンアップ)
[DoJa-5.0 (903i) 以降]
このアプリケーションが、
IC アプリケーション(のサービス)削除画面から起動したものである
(getLaunchType() の戻り値が
LAUNCHED_FROM_MENU_FOR_DELETION である)
場合に発生します。
public int getSuspendInfo()
直前のサスペンドの理由およびそのサスペンド中に起こった事象を取得します。
[DoJa-3.0 (505i) のみ]
サスペンド中に起こった事象の取得については、
端末によってはサポートされない場合があります。
[DoJa-3.0 (505iS) 以降]
サスペンド中に起こった事象については、
複数の事象が起こった場合も含めて、全種類取得できることが保証されています。
値はビット論理和により得られます。
サスペンドが起こっていない場合には、0 を返します。
アプリケーションのメソッド呼び出しを契機とするサスペンドの場合、
SUSPEND_BY_IAPP ビットが設定されています。
メール着信など外部からの割り込みによるサスペンドの場合、
SUSPEND_BY_NATIVE ビットが設定されています。
サスペンドが起こっていない場合を除き、
この2つのビットの一方が必ず1に設定されています。
両方が1に設定されていることはありません。
取得できる事象には、
SUSPEND_PACKETIN、
SUSPEND_CALL_OUT、
SUSPEND_CALL_IN、
SUSPEND_MAIL_SEND、
SUSPEND_MAIL_RECEIVE、
SUSPEND_MESSAGE_RECEIVE、
SUSPEND_SCHEDULE_NOTIFY
があります。
例えば、パケット着信があり、メールの受信を行った場合、
SUSPEND_BY_NATIVE | SUSPEND_PACKETIN | SUSPEND_MAIL_RECEIVE
が返ります。
[DoJa-3.5 (900i) 以降]
FOMA 端末では、取得できる事象に
SUSPEND_MULTITASK_APPLICATION
もあります。
public void setLaunchTime(int index,
ScheduleDate date)
1回限り」
「毎日」
「毎週」
(オプションで「毎月」
「毎年」)の起動時刻を設定できます。
iアプリメニューから設定できる起動時刻や
ADFのLaunchAtキーで指定される起動時刻とは無関係です。
引数 date に null を指定すると、スケジュールを削除します。 また、すでにスケジュールが設定されているスケジュール番号を指定した場合、 スケジュールは上書きされます。 自動起動がおこなわれても設定したスケジュールの内容は削除されません。 アプリケーションがバージョンアップされると、 このメソッドで設定した起動時刻の設定はすべて削除されます。
自動起動の試みは起動の成否にかかわらず、 次の起動予定時刻に対して1回しか行われません。 次の起動予定時刻を過ぎた端末の時計を起動予定時刻前に戻しても、 すでに実装により自動起動の試みが行われた場合 (電源オフ中に自動起動が失敗していると判断済みの場合も含む)には、 起動予定時刻になっても自動起動は行われません。 これは「1回限り」の起動でも繰り返し起動でも同じです。
パーミッションとしてiアプリ自動起動APIの利用が許可されている トラステッドiアプリケーションのみこのメソッドを呼び出すことができます。
ミニマムスペックでは、自動起動時刻の設定は、 「1回限り」「毎日」「毎週」の日時指定タイプを指定できます。 「毎月」「毎年」の日時指定タイプはサポートされないことがあります。 また、1アプリケーションあたり最低4つまでのスケジュール時刻が指定できます。
同一アプリケーションに複数の自動起動時刻を設定したとき、 起動から次の起動までの間隔が10分より短い場合のアプリケーションの動作(切り上げて起動するか、起動しないか)は機種依存です。
index - 設定するスケジュール番号を指定します。
スケジュール番号は0から始まります。date - 起動スケジュールを指定します。
nullを指定すると、スケジュールを削除します。
過去の時刻を指定しても例外は発生しませんが、「1回限り」の起動タイプの場合は即座に起動済み(成功)
として解釈され、実際に自動起動することはありません。
IllegalArgumentException - 範囲外のスケジュール番号を指定した場合に発生します。
IllegalArgumentException - サポートされない日時指定タイプの起動時刻を
指定した場合に発生します。
IllegalArgumentException - サポートされない範囲の日時の起動時刻
(例えば、1900年など)を指定した場合に発生します。
getLaunchTime(int)public ScheduleDate getLaunchTime(int index)
setLaunchTime(int, ScheduleDate)
メソッドで設定した自動起動時刻が取得できます。
iアプリメニューから設定できる起動時刻や
ADFのLaunchAtキーで指定される起動時刻は取得できません。
パーミッションとしてiアプリ自動起動APIの利用が許可されている トラステッドiアプリケーションのみこのメソッドを呼び出すことができます。
ミニマムスペックでは、最低4つまでのスケジュール時刻が取得できます。
index - 取得するスケジュール番号を指定します。
スケジュール番号は0から始まります。
IllegalArgumentException - 範囲外のスケジュール番号を指定した場合に発生します。
public PushManager getPushManager() [iアプリオプションAPI]
リモート制御におけるプッシュ機能の管理オブジェクトを取得します。
ADF に RemoteControl キーがない i アプリから呼び出された場合、 SecurityException が発生します。
このメソッドが初めて呼ばれた場合はオブジェクトを生成して返します。 以後、常に同じオブジェクトへの参照を返します。
端末によっては、リモート制御機能がサポートされない場合があります。
UnsupportedOperationException - リモート制御機能をサポートしていない場合に発生します。
SecurityException - ADF に
RemoteControl
キーの指定がないアプリケーションが
このメソッドを呼び出した場合に発生します。(即起動モード時も含む)
public final boolean isMoved() [iアプリオプションAPI]
このアプリケーションが端末外部から移されたかどうかを調べます。
本メソッドは、 このアプリケーションがメディア等により端末外部から移されたことを示す情報 (以下、移動情報) の値を返します。
このアプリケーションが移されたタイミングで移動情報に true が設定されます。
また、アプリケーションプログラマが clearMoved() を呼び出すと移動情報に false が設定されます。
アプリケーションの終了や、端末の電源オフによって移動情報が変更されることはありません。
移動情報を false から true とするには、再び外部から端末にこのアプリケーションを移さなければなりません。
本メソッドと clearMoved() をアプリケーションプログラマが用いることで、
アプリケーションが移された直後に任意の処理を行うことができます。
なお、このアプリケーションの移動で移動先と移動元の端末が異なるかどうかの判定が必要である場合には、
isMovedFromOtherTerminal() を参照して下さい。
端末によっては、外部メモリへの i アプリケーション移動の操作をサポートしていない場合があります。 その場合、このメソッドは false を返します。
clearMoved() を呼び出した場合、または、
ダウンロードされてから端末外部に移されていない場合は false を返します。clearMoved(),
isMovedFromOtherTerminal()public final void clearMoved() [iアプリオプションAPI]
このアプリケーションが端末外部から移されたことを示す情報に false を設定します。
設定した値の詳細については isMoved() を参照して下さい。
端末によっては、外部メモリへの i アプリケーション移動の操作をサポートしていない場合があります。 その場合、このメソッドの呼び出しは無視されます。
isMoved()public final boolean isMovedFromOtherTerminal() [iアプリオプションAPI]
このアプリケーションの移動で、移動先と移動元の端末が異なるかどうかを調べます。
このアプリケーションが端末外部から移された場合に、 移動先と移動元の端末が異なるかどうかを判定します。
移動元の端末とは、次の全ての条件を満たす端末です。
なお、条件を満す端末がない場合、
移動元の端末は、バージョンアップではなく、一番最初にこのアプリケーションをダウンロードした端末とします。
このアプリケーションで clearMoved() を呼び出さないで、
このアプリケーションを一時的に置いただけの端末は、
移動元の端末とはみなされません。
また、移動先の端末とは、このアプリケーションを実行している端末です。
このアプリケーションが端末外部から移されたかどうかの判定については、 isMoved() を参照して下さい。
端末によっては、外部メモリへの i アプリケーション移動の操作をサポートしていない場合があります。 その場合、このメソッドは false を返します。
isMoved()