Channel.Transmit(Byte[]) メソッド

定義

APDU コマンド (ISO/IEC 7816-4 に従って) を Secure 要素に送信します。

[Android.Runtime.Register("transmit", "([B)[B", "", ApiSince=28)]
public byte[] Transmit (byte[] command);
[<Android.Runtime.Register("transmit", "([B)[B", "", ApiSince=28)>]
member this.Transmit : byte[] -> byte[]

パラメーター

command
Byte[]

送信される APDU コマンドをバイト配列として指定します。

戻り値

Byte[]

受信した応答をバイト配列として返します。 返されるバイト配列には、次の順序でデータ バイトが含まれます: [<最初のデータ バイト>, ..., <最後のデータ バイト>, <sw1>, <sw2>]

属性

注釈

APDU コマンド (ISO/IEC 7816-4 に従って) を Secure 要素に送信します。 基になるレイヤーは、この APDU を転送するために必要な数の TTU を生成します。 API は、連結された応答を含む Secure Element から返されるすべての使用可能なデータが取得され、呼び出し元のアプリケーションで使用可能になるようにする必要があります。 警告状態コードを受け取った場合、API はそれ以上の応答データをチェックしませんが、これまでに受信したすべてのデータと警告状態コードを返します。<br> トランスポート部分はアプリケーションから見えません。 生成される応答は APDU の応答です。つまり、関連するすべてのプロトコルの応答は、API または基になる実装内で処理されます。<br> 送信方法は、ATR 内のコーディングとは無関係に、拡張長 APDU コマンドをサポートしなければなりません。<br> ステータス ワード '61 XX' の場合、API または基になる実装は、ISO 7816-4 標準で LE=XX で指定されている GET RESPONSE コマンドを発行する必要があります。ステータス ワード '6C XX' の場合、API または基になる実装は LE=XX で入力コマンドを再発行する必要があります。 その他の状態ワードの場合、API (または基になる実装) は、データと状態ワードを含む完全な応答をデバイス アプリケーションに返す必要があります。 API (または基になる実装) は、受信した状態の単語を内部的に処理することはできません。 Secure 要素がエラー コードで応答した場合でも、チャネルは閉じられないものとします。 システムは、このメソッドに対するすべての同時呼び出し間の同期を保証し、SE への転送に必要な TPM の数に関係なく、一度に 1 つの APDU のみが送信されるようにします。 この SE への APDU 通信全体が APDU にロックされます。<br> APDU のクラス バイト内のチャネル情報は無視されます。 システムは、APDU がこのチャネルで確実に転送されるように、必要な情報を追加します。 送信できるコマンドのセットに関する唯一の制限は以下で定義されています。API 実装では、他のすべてのコマンド<を送信できる必要があります。br><ul><li>MANAGE_CHANNEL コマンドは許可されません。</li li><>SELECT by DF Name (p1=04) は使用できません。<チャネル番号を持つ /li li><>CLA バイトはマスク解除されます。</li></ul>

の Java ドキュメント android.se.omapi.Channel.transmit(byte[])

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象