History log of /frameworks/opt/telephony/src/java/com/android/internal/telephony/euicc/EuiccOperation.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9af6424827eb9e023e037dd5aefd229235aceddb 14-Jun-2017 Jeff Davidson <jpd@google.com> Fix double prompt when downloading profiles.

Currently, if a carrier app wants to download a profile, two consent
dialogs may be triggered:

1. One to deactivate the current SIM and activate the eSIM, as we
cannot check for calling permissions without the eSIM being active.

2. Another to prompt the user for permission if the current carrier is
different, to prevent a carrier from hijacking cellular service.

Since the dialog for 2 is stronger than 1 (an assumption we were
already leveraging), when an unprivileged app requests a download,
skip straight to the second prompt even if the eSIM isn't active. If
the user accepts the prompt, we assume it's okay to switch to the eSIM
first and move forward.

In addition, we pass the calling app package name so the prompt UI can
show details of the app requesting consent.

Fixes: 38049463
Test: TreeHugger + E2E verification
Change-Id: Iaeb33f8a88aec92f323d91586e45d4852bb7a489
/frameworks/opt/telephony/src/java/com/android/internal/telephony/euicc/EuiccOperation.java
31e69b5efbc9b9a39183acce93a4c1b2e73b3006 15-May-2017 Jeff Davidson <jpd@google.com> eUICC error code cleanup.

Fixes: 38206601
Test: TreeHugger
Change-Id: I2305e4cb360adccc26483098070cf50890fee249
/frameworks/opt/telephony/src/java/com/android/internal/telephony/euicc/EuiccOperation.java
8f32416b4c5f5657e7ccf3a1ee031598a0203fd9 14-Apr-2017 Jeff Davidson <jpd@google.com> Implement remaining core eUICC APIs.

These APIs follow the template of the APIs which have already been
implemented, in general. Switch, delete, and update nickname take a
subscription ID and map this to an ICCID before passing it to the
EuiccService implementation.

This completes the baseline implementation as designed; any additional
APIs or tweaks to the APIs will be tracked as separate bugs.

Fixes: 33075886
Test: Build/boot/unit test
Change-Id: I98ad64fb70b8989d14f3f3b6f875e693258faf5d
/frameworks/opt/telephony/src/java/com/android/internal/telephony/euicc/EuiccOperation.java
953d76b6865b1f76c6fadbbd69898fe064b6c157 07-Apr-2017 Jeff Davidson <jpd@google.com> Implement eUICC error resolution.

When an operation fails with an error that the user can resolve, we
encapsulate the operation + failure in an EuiccOperation object. The
app can run the LUI to resolve the error, at which point the LUI calls
continueOperation with the original EuiccOperation and the result of
the resolution.

The resolution intent is a PendingIntent and thus the EuiccOperation
extra is safe from tampering - it is impossible to override an extra
on a PendingIntent belonging to another app.

Bug: 33075886
Test: Unit tests and manual verification using test LPA
Change-Id: I369e643efd522773d174e5ade8ebff4b8139f6d5
/frameworks/opt/telephony/src/java/com/android/internal/telephony/euicc/EuiccOperation.java