summaryrefslogtreecommitdiffstats
path: root/telephony/java/com
diff options
context:
space:
mode:
authorShishir Agrawal <shishir@google.com>2014-07-29 21:15:42 -0700
committerShishir Agrawal <shishir@google.com>2014-07-30 18:09:53 -0700
commita122e8df741456ea34e4a57d205411b8371a16db (patch)
tree312659c03d1cf99dcab3ffb9367db4f2c266b70d /telephony/java/com
parentf9a274c9b8578dda6afeda422bff18b1577028b9 (diff)
downloadframeworks_base-a122e8df741456ea34e4a57d205411b8371a16db.zip
frameworks_base-a122e8df741456ea34e4a57d205411b8371a16db.tar.gz
frameworks_base-a122e8df741456ea34e4a57d205411b8371a16db.tar.bz2
Add new APIs iccExchangeSimIO and iccTransmitApduBasicChannel to TelephonyManager.
The new APIs are needed to support SEEK. Also modifies TelephonyManager.iccOpenLogicalChannel to return the status of the command. Change-Id: Iff2674fb0e23210f2579cb883e64571347ade5e6
Diffstat (limited to 'telephony/java/com')
-rw-r--r--telephony/java/com/android/internal/telephony/ITelephony.aidl41
1 files changed, 37 insertions, 4 deletions
diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl
index 886de40..72b04cf 100644
--- a/telephony/java/com/android/internal/telephony/ITelephony.aidl
+++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl
@@ -18,9 +18,10 @@ package com.android.internal.telephony;
import android.content.Intent;
import android.os.Bundle;
-import java.util.List;
-import android.telephony.NeighboringCellInfo;
import android.telephony.CellInfo;
+import android.telephony.IccOpenLogicalChannelResponse;
+import android.telephony.NeighboringCellInfo;
+import java.util.List;
/**
@@ -499,9 +500,9 @@ interface ITelephony {
* Input parameters equivalent to TS 27.007 AT+CCHO command.
*
* @param AID Application id. See ETSI 102.221 and 101.220.
- * @return The logical channel id which is set to -1 on error.
+ * @return an IccOpenLogicalChannelResponse object.
*/
- int iccOpenLogicalChannel(String AID);
+ IccOpenLogicalChannelResponse iccOpenLogicalChannel(String AID);
/**
* Closes a previously opened logical channel to the ICC card.
@@ -535,6 +536,38 @@ interface ITelephony {
int p1, int p2, int p3, String data);
/**
+ * Transmit an APDU to the ICC card over the basic channel.
+ *
+ * Input parameters equivalent to TS 27.007 AT+CSIM command.
+ *
+ * @param cla Class of the APDU command.
+ * @param instruction Instruction of the APDU command.
+ * @param p1 P1 value of the APDU command.
+ * @param p2 P2 value of the APDU command.
+ * @param p3 P3 value of the APDU command. If p3 is negative a 4 byte APDU
+ * is sent to the SIM.
+ * @param data Data to be sent with the APDU.
+ * @return The APDU response from the ICC card with the status appended at
+ * the end. If an error occurs, an empty string is returned.
+ */
+ String iccTransmitApduBasicChannel(int cla, int instruction,
+ int p1, int p2, int p3, String data);
+
+ /**
+ * Returns the response APDU for a command APDU sent through SIM_IO.
+ *
+ * @param fileID
+ * @param command
+ * @param p1 P1 value of the APDU command.
+ * @param p2 P2 value of the APDU command.
+ * @param p3 P3 value of the APDU command.
+ * @param filePath
+ * @return The APDU response.
+ */
+ byte[] iccExchangeSimIO(int fileID, int command, int p1, int p2, int p3,
+ String filePath);
+
+ /**
* Send ENVELOPE to the SIM and returns the response.
*
* @param contents String containing SAT/USAT response in hexadecimal