|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
Objectcom.docomostar.device.felica.FreeArea
public final class FreeArea
内部カードのフリーエリアにアクセスする手段を提供するクラスです。 フリーエリアアクセスはオフライン処理の一種です。
なお、オンライン処理中においては、オフライン処理を行うことはできません。
すなわち、OnlineFelica.start(String) を呼び出してから
OnlineFelica.stop() を呼び出すまでの間に、
このクラスに用意されているメソッドを呼び出すことはできません。
フリーエリアのデータ読み書きメソッド(
read(),
read(int[]),
write(byte[]),
write(int[], byte[]))呼び出しの過程で、
内部カードに対して「コマンドパケットで使用する属性」の「パケット種別」として
「2 バイトノードコード指定パケット」を設定します。
その結果、OfflineFelica.setParameter(long)
で設定した属性値が変更される可能性がありますので注意してください。
これらのメソッド呼び出しで例外が発生した場合でも同様です。
フリーエリアのデータ読み書き後にリセットを行うかどうかを
setReset(boolean) にて指定できます。
リセットは PIN 解除情報をクリアするために行います。
デフォルトではリセットは行いません。
フリーエリアのデータ読み書きメソッド(
read(),
read(int[]),
write(byte[]),
write(int[], byte[]))は、
呼び出された時点で isReset() が true を返す場合は、
データを読み/書きした後にリセットを行います。
ただし、これらのメソッドはリセット前の処理が途中で失敗した場合は、
その時点で処理を中断し例外をスローします。
Felica.getFreeArea()| メソッドの概要 | |
|---|---|
byte[] |
getIDm()
フリー領域のIDmを返します。 |
boolean |
isReset()
フリーエリアへの読み/書き込み後にリセットを行うかどうかを返します。 |
byte[] |
read()
フリー領域を使用するアプリケーションに括り付けられた フリーエリアのデータを読み込みます。 |
byte[] |
read(int[] index)
フリー領域を使用するアプリケーションに括り付けられたフリーエリアの データをブロックインデックスを指定して読み込みます。 |
void |
setReset(boolean flag)
フリーエリアへの読み/書き込み後にリセットを行うかどうかを設定します。 |
void |
write(byte[] data)
フリー領域を使用するアプリケーションに括り付けられたフリーエリアに データを書き込みます。 |
void |
write(int[] index,
byte[] data)
フリー領域を使用するアプリケーションに括り付けられたフリーエリアに ブロックインデックスを指定してデータを書き込みます。 |
| クラス Object から継承されたメソッド |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| メソッドの詳細 |
|---|
public byte[] read()
throws FelicaException,
java.io.IOException
フリー領域を使用するアプリケーションに括り付けられた フリーエリアのデータを読み込みます。 返されるデータの長さは64バイトとなります。
DeviceException - DeviceException - FelicaException - FelicaException - isReset() が true を返す場合)に、
リセットに失敗した場合に発生します。
java.io.InterruptedIOException -
PortBusyException -
java.io.IOException -
public byte[] read(int[] index)
throws FelicaException,
java.io.IOException
フリー領域を使用するアプリケーションに括り付けられたフリーエリアの データをブロックインデックスを指定して読み込みます。 ブロックインデックスは0から3までの整数値で、4つまで指定できます。 返されるデータの長さは最大64バイトとなります。
index - ブロックインデックスの配列。
DeviceException - DeviceException - NullPointerException -
IllegalArgumentException -
IndexOutOfBoundsException -
FelicaException - FelicaException - isReset() が true を返す場合)に、
リセットに失敗した場合に発生します。
java.io.InterruptedIOException -
PortBusyException -
java.io.IOException -
public void write(byte[] data)
throws FelicaException,
java.io.IOException
フリー領域を使用するアプリケーションに括り付けられたフリーエリアに データを書き込みます。データ長が64バイトに満たない場合はゼロで パディングされます。64バイトを越える場合は切り捨てられます。
data - フリーエリアデータ。
DeviceException - DeviceException - NullPointerException -
FelicaException - FelicaException - isReset() が true を返す場合)に、
リセットに失敗した場合に発生します。
java.io.InterruptedIOException -
PortBusyException -
java.io.IOException -
public void write(int[] index,
byte[] data)
throws FelicaException,
java.io.IOException
フリー領域を使用するアプリケーションに括り付けられたフリーエリアに ブロックインデックスを指定してデータを書き込みます。 ブロックインデックスは0から3までの整数値で、4つまで指定できます。 指定されたフリーエリアデータの長さが (インデックスの配列の長さ × 16バイト) よりも短い場合、足りない部分はゼロパディングされます。 また、 (インデックスの配列の長さ × 16バイト) バイトを越える部分は無視されます。
index - ブロックインデックスの配列。data - フリーエリアデータ。
DeviceException - DeviceException - NullPointerException -
IllegalArgumentException -
IndexOutOfBoundsException -
FelicaException - FelicaException - isReset() が true を返す場合)に、
リセットに失敗した場合に発生します。
java.io.InterruptedIOException -
PortBusyException -
java.io.IOException -
public byte[] getIDm()
throws FelicaException,
java.io.IOException
このメソッドを呼び出すと、フリー領域に対してポーリングを行ない IDm を取得します。 フリー領域へのポーリングに成功し、内部カード内でシステム切り替えが発生すると、 それまで利用していたシステムのPINの解除情報がクリアされます。
DeviceException - DeviceException - FelicaException - java.io.InterruptedIOException -
PortBusyException -
java.io.IOException -
public boolean isReset()
このオブジェクトが生成された直後では、デフォルト値として false を返します。
DeviceException - DeviceException - public void setReset(boolean flag)
flag - リセットを行う場合は true、行わない場合は false を指定します。
DeviceException - DeviceException -
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
NTT DOCOMO,INC.
本製品または文書は著作権法により保護されており、その使用、複製、再頒布および逆コンパイルを制限するライセンスのもとにおいて頒布されます。NTTドコモ(その他に許諾者がある場合は当該許諾者も含めて)の書面による事前の許可なく、本製品および関連する文書のいかなる部分も、いかなる方法によっても複製することが禁じられます。フォントを含む第三者のソフトウェアは、著作権法により保護されており、その提供者からライセンスを受けているものです。
Sun、Sun Microsystems、Java、J2MEおよびJ2SEは、米国およびその他の国における米国 Sun Microsystems,Inc.の商標または登録商標です。サンのロゴマークは、米国 Sun Microsystems, Inc.の登録商標です。
FeliCaは、ソニー株式会社が開発した非接触ICカードの技術方式です。FeliCaは、ソニー株式会社の登録商標です。
「iモード」、「iアプリ/アイアプリ」、「i-αppli」ロゴ、「DoJa」はNTTドコモの商標または登録商標です。
その他記載された会社名、製品名などは該当する各社の商標または登録商標です。