Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6d37f466 authored by twyen's avatar twyen Committed by android-build-merger
Browse files

Merge "Strip +1 when subscribing to VVM3" am: ed5b76a1

am: 26c92569

Change-Id: Ifa6c8b14f79c1e885fb360f22beccace0b27c3f3
parents 786c51a0 26c92569
Loading
Loading
Loading
Loading
+19 −6
Original line number Diff line number Diff line
@@ -159,6 +159,7 @@ public class Vvm3Subscriber {
  }

  @WorkerThread
  @SuppressWarnings("missingPermission")
  public Vvm3Subscriber(
      ActivationTask task,
      PhoneAccountHandle handle,
@@ -175,11 +176,23 @@ public class Vvm3Subscriber {
    // Assuming getLine1Number() will work with VVM3. For unprovisioned users the IMAP username
    // is not included in the status SMS, thus no other way to get the current phone number.
    number =
        stripInternational(
            this.helper
                .getContext()
                .getSystemService(TelephonyManager.class)
                .createForPhoneAccountHandle(this.handle)
            .getLine1Number();
                .getLine1Number());
  }

  /**
   * Self provisioning gateway expects 10 digit national format, but {@link
   * TelephonyManager#getLine1Number()} might return e164 with "+1" at front.
   */
  private static String stripInternational(String number) {
    if (number.startsWith("+1")) {
      number = number.substring(2);
    }
    return number;
  }

  @WorkerThread