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

Commit 1540a7ea authored by Wink Saville's avatar Wink Saville Committed by Android Git Automerger
Browse files

am c69f5be0: Add PhoneSubInfo.getCompleteVoiceMailNumber.

Merge commit 'c69f5be0' into gingerbread

* commit 'c69f5be0':
  Add PhoneSubInfo.getCompleteVoiceMailNumber.
parents d3579580 c69f5be0
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -135,9 +135,9 @@ public class PhoneNumberUtils
        }

        // TODO: We don't check for SecurityException here (requires
        // READ_PHONE_STATE permission).
        // CALL_PRIVILEGED permission).
        if (scheme.equals("voicemail")) {
            return TelephonyManager.getDefault().getVoiceMailNumber();
            return TelephonyManager.getDefault().getCompleteVoiceMailNumber();
        }

        if (context == null) {
+19 −0
Original line number Diff line number Diff line
@@ -664,6 +664,25 @@ public class TelephonyManager {
        }
    }

    /**
     * Returns the complete voice mail number. Return null if it is unavailable.
     * <p>
     * Requires Permission:
     *   {@link android.Manifest.permission#CALL_PRIVILEGED CALL_PRIVILEGED}
     *
     * @hide
     */
    public String getCompleteVoiceMailNumber() {
        try {
            return getSubscriberInfo().getCompleteVoiceMailNumber();
        } catch (RemoteException ex) {
            return null;
        } catch (NullPointerException ex) {
            // This could happen before phone restarts due to crashing
            return null;
        }
    }

    /**
     * Returns the voice mail count. Return 0 if unavailable.
     * <p>
+5 −0
Original line number Diff line number Diff line
@@ -58,6 +58,11 @@ interface IPhoneSubInfo {
     */
    String getVoiceMailNumber();

    /**
     * Retrieves the complete voice mail number.
     */
    String getCompleteVoiceMailNumber();

    /**
     * Retrieves the alpha identifier associated with the voice mail number.
     */
+20 −1
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import java.io.PrintWriter;
import android.content.Context;
import android.content.pm.PackageManager;
import android.os.Binder;
import android.telephony.PhoneNumberUtils;
import android.util.Log;

public class PhoneSubInfo extends IPhoneSubInfo.Stub {
@@ -29,6 +30,9 @@ public class PhoneSubInfo extends IPhoneSubInfo.Stub {
    private Context mContext;
    private static final String READ_PHONE_STATE =
        android.Manifest.permission.READ_PHONE_STATE;
    private static final String CALL_PRIVILEGED =
        // TODO Add core/res/AndriodManifest.xml#READ_PRIVILEGED_PHONE_STATE
        android.Manifest.permission.CALL_PRIVILEGED;

    public PhoneSubInfo(Phone phone) {
        mPhone = phone;
@@ -101,7 +105,22 @@ public class PhoneSubInfo extends IPhoneSubInfo.Stub {
     */
    public String getVoiceMailNumber() {
        mContext.enforceCallingOrSelfPermission(READ_PHONE_STATE, "Requires READ_PHONE_STATE");
        return (String) mPhone.getVoiceMailNumber();
        String number = PhoneNumberUtils.extractNetworkPortion(mPhone.getVoiceMailNumber());
        Log.d(LOG_TAG, "VM: PhoneSubInfo.getVoiceMailNUmber: "); // + number);
        return number;
    }

    /**
     * Retrieves the compelete voice mail number.
     *
     * @hide
     */
    public String getCompleteVoiceMailNumber() {
        mContext.enforceCallingOrSelfPermission(CALL_PRIVILEGED,
                "Requires CALL_PRIVILEGED");
        String number = mPhone.getVoiceMailNumber();
        Log.d(LOG_TAG, "VM: PhoneSubInfo.getCompleteVoiceMailNUmber: "); // + number);
        return number;
    }

    /**
+7 −0
Original line number Diff line number Diff line
@@ -81,6 +81,13 @@ public class PhoneSubInfoProxy extends IPhoneSubInfo.Stub {
        return mPhoneSubInfo.getVoiceMailNumber();
    }

    /**
     * Retrieves the complete voice mail number.
     */
    public String getCompleteVoiceMailNumber() {
        return mPhoneSubInfo.getCompleteVoiceMailNumber();
    }

    /**
     * Retrieves the alpha identifier associated with the voice mail number.
     */