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

Commit ac78d9ae authored by Chen Xu's avatar Chen Xu Committed by android-build-merger
Browse files

Merge "Add VisualVoicemailService"

am: 8c6925a8

Change-Id: I248baea501c4e1a47981e3aecfe476f89440f0af
parents 3e56fdba 8c6925a8
Loading
Loading
Loading
Loading
+49 −0
Original line number Diff line number Diff line
@@ -36,6 +36,7 @@ package android {
    field public static final java.lang.String BIND_TELECOM_CONNECTION_SERVICE = "android.permission.BIND_TELECOM_CONNECTION_SERVICE";
    field public static final java.lang.String BIND_TEXT_SERVICE = "android.permission.BIND_TEXT_SERVICE";
    field public static final java.lang.String BIND_TV_INPUT = "android.permission.BIND_TV_INPUT";
    field public static final java.lang.String BIND_VISUAL_VOICEMAIL_SERVICE = "android.permission.BIND_VISUAL_VOICEMAIL_SERVICE";
    field public static final java.lang.String BIND_VOICE_INTERACTION = "android.permission.BIND_VOICE_INTERACTION";
    field public static final java.lang.String BIND_VPN_SERVICE = "android.permission.BIND_VPN_SERVICE";
    field public static final java.lang.String BIND_VR_LISTENER_SERVICE = "android.permission.BIND_VR_LISTENER_SERVICE";
@@ -38309,6 +38310,54 @@ package android.telephony {
    method public void onReceiveUssdResponseFailed(java.lang.String, int);
  }
  public abstract class VisualVoicemailService extends android.app.Service {
    ctor public VisualVoicemailService();
    method public android.os.IBinder onBind(android.content.Intent);
    method public abstract void onCellServiceConnected(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle);
    method public abstract void onSimRemoved(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle);
    method public abstract void onSmsReceived(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telephony.VisualVoicemailSms);
    method public abstract void onStopped(android.telephony.VisualVoicemailService.VisualVoicemailTask);
    method public static final void sendVisualVoicemailSms(android.content.Context, android.telecom.PhoneAccountHandle, java.lang.String, short, java.lang.String, android.app.PendingIntent);
    method public static final void setSmsFilterSettings(android.content.Context, android.telecom.PhoneAccountHandle, android.telephony.VisualVoicemailSmsFilterSettings);
    field public static final java.lang.String SERVICE_INTERFACE = "android.telephony.VisualVoicemailService";
  }
  public static class VisualVoicemailService.VisualVoicemailTask {
    method public final void finish();
  }
  public final class VisualVoicemailSms implements android.os.Parcelable {
    method public int describeContents();
    method public android.os.Bundle getFields();
    method public java.lang.String getMessageBody();
    method public android.telecom.PhoneAccountHandle getPhoneAccountHandle();
    method public java.lang.String getPrefix();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.telephony.VisualVoicemailSms> CREATOR;
  }
  public final class VisualVoicemailSmsFilterSettings implements android.os.Parcelable {
    method public int describeContents();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.telephony.VisualVoicemailSmsFilterSettings> CREATOR;
    field public static final java.lang.String DEFAULT_CLIENT_PREFIX = "//VVM";
    field public static final int DEFAULT_DESTINATION_PORT = -1; // 0xffffffff
    field public static final java.util.List<java.lang.String> DEFAULT_ORIGINATING_NUMBERS;
    field public static final int DESTINATION_PORT_ANY = -1; // 0xffffffff
    field public static final int DESTINATION_PORT_DATA_SMS = -2; // 0xfffffffe
    field public final java.lang.String clientPrefix;
    field public final int destinationPort;
    field public final java.util.List<java.lang.String> originatingNumbers;
  }
  public static class VisualVoicemailSmsFilterSettings.Builder {
    ctor public VisualVoicemailSmsFilterSettings.Builder();
    method public android.telephony.VisualVoicemailSmsFilterSettings build();
    method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setClientPrefix(java.lang.String);
    method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setDestinationPort(int);
    method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setOriginatingNumbers(java.util.List<java.lang.String>);
  }
}
package android.telephony.cdma {
+49 −0
Original line number Diff line number Diff line
@@ -55,6 +55,7 @@ package android {
    field public static final java.lang.String BIND_TRUST_AGENT = "android.permission.BIND_TRUST_AGENT";
    field public static final java.lang.String BIND_TV_INPUT = "android.permission.BIND_TV_INPUT";
    field public static final java.lang.String BIND_TV_REMOTE_SERVICE = "android.permission.BIND_TV_REMOTE_SERVICE";
    field public static final java.lang.String BIND_VISUAL_VOICEMAIL_SERVICE = "android.permission.BIND_VISUAL_VOICEMAIL_SERVICE";
    field public static final java.lang.String BIND_VOICE_INTERACTION = "android.permission.BIND_VOICE_INTERACTION";
    field public static final java.lang.String BIND_VPN_SERVICE = "android.permission.BIND_VPN_SERVICE";
    field public static final java.lang.String BIND_VR_LISTENER_SERVICE = "android.permission.BIND_VR_LISTENER_SERVICE";
@@ -41555,6 +41556,54 @@ package android.telephony {
    method public void onReceiveUssdResponseFailed(java.lang.String, int);
  }
  public abstract class VisualVoicemailService extends android.app.Service {
    ctor public VisualVoicemailService();
    method public android.os.IBinder onBind(android.content.Intent);
    method public abstract void onCellServiceConnected(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle);
    method public abstract void onSimRemoved(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle);
    method public abstract void onSmsReceived(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telephony.VisualVoicemailSms);
    method public abstract void onStopped(android.telephony.VisualVoicemailService.VisualVoicemailTask);
    method public static final void sendVisualVoicemailSms(android.content.Context, android.telecom.PhoneAccountHandle, java.lang.String, short, java.lang.String, android.app.PendingIntent);
    method public static final void setSmsFilterSettings(android.content.Context, android.telecom.PhoneAccountHandle, android.telephony.VisualVoicemailSmsFilterSettings);
    field public static final java.lang.String SERVICE_INTERFACE = "android.telephony.VisualVoicemailService";
  }
  public static class VisualVoicemailService.VisualVoicemailTask {
    method public final void finish();
  }
  public final class VisualVoicemailSms implements android.os.Parcelable {
    method public int describeContents();
    method public android.os.Bundle getFields();
    method public java.lang.String getMessageBody();
    method public android.telecom.PhoneAccountHandle getPhoneAccountHandle();
    method public java.lang.String getPrefix();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.telephony.VisualVoicemailSms> CREATOR;
  }
  public final class VisualVoicemailSmsFilterSettings implements android.os.Parcelable {
    method public int describeContents();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.telephony.VisualVoicemailSmsFilterSettings> CREATOR;
    field public static final java.lang.String DEFAULT_CLIENT_PREFIX = "//VVM";
    field public static final int DEFAULT_DESTINATION_PORT = -1; // 0xffffffff
    field public static final java.util.List<java.lang.String> DEFAULT_ORIGINATING_NUMBERS;
    field public static final int DESTINATION_PORT_ANY = -1; // 0xffffffff
    field public static final int DESTINATION_PORT_DATA_SMS = -2; // 0xfffffffe
    field public final java.lang.String clientPrefix;
    field public final int destinationPort;
    field public final java.util.List<java.lang.String> originatingNumbers;
  }
  public static class VisualVoicemailSmsFilterSettings.Builder {
    ctor public VisualVoicemailSmsFilterSettings.Builder();
    method public android.telephony.VisualVoicemailSmsFilterSettings build();
    method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setClientPrefix(java.lang.String);
    method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setDestinationPort(int);
    method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setOriginatingNumbers(java.util.List<java.lang.String>);
  }
}
package android.telephony.cdma {
+49 −0
Original line number Diff line number Diff line
@@ -36,6 +36,7 @@ package android {
    field public static final java.lang.String BIND_TELECOM_CONNECTION_SERVICE = "android.permission.BIND_TELECOM_CONNECTION_SERVICE";
    field public static final java.lang.String BIND_TEXT_SERVICE = "android.permission.BIND_TEXT_SERVICE";
    field public static final java.lang.String BIND_TV_INPUT = "android.permission.BIND_TV_INPUT";
    field public static final java.lang.String BIND_VISUAL_VOICEMAIL_SERVICE = "android.permission.BIND_VISUAL_VOICEMAIL_SERVICE";
    field public static final java.lang.String BIND_VOICE_INTERACTION = "android.permission.BIND_VOICE_INTERACTION";
    field public static final java.lang.String BIND_VPN_SERVICE = "android.permission.BIND_VPN_SERVICE";
    field public static final java.lang.String BIND_VR_LISTENER_SERVICE = "android.permission.BIND_VR_LISTENER_SERVICE";
@@ -38408,6 +38409,54 @@ package android.telephony {
    method public void onReceiveUssdResponseFailed(java.lang.String, int);
  }
  public abstract class VisualVoicemailService extends android.app.Service {
    ctor public VisualVoicemailService();
    method public android.os.IBinder onBind(android.content.Intent);
    method public abstract void onCellServiceConnected(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle);
    method public abstract void onSimRemoved(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telecom.PhoneAccountHandle);
    method public abstract void onSmsReceived(android.telephony.VisualVoicemailService.VisualVoicemailTask, android.telephony.VisualVoicemailSms);
    method public abstract void onStopped(android.telephony.VisualVoicemailService.VisualVoicemailTask);
    method public static final void sendVisualVoicemailSms(android.content.Context, android.telecom.PhoneAccountHandle, java.lang.String, short, java.lang.String, android.app.PendingIntent);
    method public static final void setSmsFilterSettings(android.content.Context, android.telecom.PhoneAccountHandle, android.telephony.VisualVoicemailSmsFilterSettings);
    field public static final java.lang.String SERVICE_INTERFACE = "android.telephony.VisualVoicemailService";
  }
  public static class VisualVoicemailService.VisualVoicemailTask {
    method public final void finish();
  }
  public final class VisualVoicemailSms implements android.os.Parcelable {
    method public int describeContents();
    method public android.os.Bundle getFields();
    method public java.lang.String getMessageBody();
    method public android.telecom.PhoneAccountHandle getPhoneAccountHandle();
    method public java.lang.String getPrefix();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.telephony.VisualVoicemailSms> CREATOR;
  }
  public final class VisualVoicemailSmsFilterSettings implements android.os.Parcelable {
    method public int describeContents();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.telephony.VisualVoicemailSmsFilterSettings> CREATOR;
    field public static final java.lang.String DEFAULT_CLIENT_PREFIX = "//VVM";
    field public static final int DEFAULT_DESTINATION_PORT = -1; // 0xffffffff
    field public static final java.util.List<java.lang.String> DEFAULT_ORIGINATING_NUMBERS;
    field public static final int DESTINATION_PORT_ANY = -1; // 0xffffffff
    field public static final int DESTINATION_PORT_DATA_SMS = -2; // 0xfffffffe
    field public final java.lang.String clientPrefix;
    field public final int destinationPort;
    field public final java.util.List<java.lang.String> originatingNumbers;
  }
  public static class VisualVoicemailSmsFilterSettings.Builder {
    ctor public VisualVoicemailSmsFilterSettings.Builder();
    method public android.telephony.VisualVoicemailSmsFilterSettings build();
    method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setClientPrefix(java.lang.String);
    method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setDestinationPort(int);
    method public android.telephony.VisualVoicemailSmsFilterSettings.Builder setOriginatingNumbers(java.util.List<java.lang.String>);
  }
}
package android.telephony.cdma {
+4 −43
Original line number Diff line number Diff line
@@ -107,15 +107,7 @@ public class VoicemailContract {

    /**
     * Broadcast intent to inform a new visual voicemail SMS has been received. This intent will
     * only be delivered to the voicemail client. The intent will have the following extra values:
     *
     * <ul>
     *   <li><em>{@link #EXTRA_VOICEMAIL_SMS_TYPE}</em> - (String) The event type of the SMS. Common
     *   values are "SYNC" or "STATUS"</li>
     *   <li><em>{@link #EXTRA_VOICEMAIL_SMS_DATA}</em> - (Bundle) The fields sent by the SMS</li>
     *   <li><em>{@link #EXTRA_VOICEMAIL_SMS_SUBID}</em> - (Integer) The subscription ID of the
     *   phone account that received the SMS</li>
     * </ul>
     * only be delivered to the telephony service. {@link #EXTRA_VOICEMAIL_SMS} will be included.
     */
    /** @hide */
    @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION)
@@ -123,42 +115,11 @@ public class VoicemailContract {
            "android.intent.action.VOICEMAIL_SMS_RECEIVED";

    /**
     * Optional extra included in {@link #ACTION_VOICEMAIL_SMS_RECEIVED} broadcast intents to
     * indicate the event type of the SMS. Common values are "SYNC" or "STATUS". The extra will not
     * exist if the framework cannot parse the SMS as voicemail but the carrier pattern indicates
     * it is.
     */
    /** @hide */
    public static final String EXTRA_VOICEMAIL_SMS_PREFIX =
            "com.android.voicemail.extra.VOICEMAIL_SMS_PREFIX";

    /**
     * Optional extra included in {@link #ACTION_VOICEMAIL_SMS_RECEIVED} broadcast intents to
     * indicate the fields sent by the SMS. The extra will not exist if the framework cannot
     * parse the SMS as voicemail but the carrier pattern indicates it is.
     */
    /** @hide */
    public static final String EXTRA_VOICEMAIL_SMS_FIELDS =
            "com.android.voicemail.extra.VOICEMAIL_SMS_FIELDS";

    /**
     * Extra included in {@link #ACTION_VOICEMAIL_SMS_RECEIVED} broadcast intents to indicate the
     * message body of the SMS. This extra is included if the framework cannot
     * parse the SMS as voicemail but the carrier pattern indicates it is.
     */
    /**
     * Extra in {@link #ACTION_VOICEMAIL_SMS_RECEIVED} indicating the content of the SMS.
     *
     * @hide
     */
    public static final String EXTRA_VOICEMAIL_SMS_MESSAGE_BODY =
        "com.android.voicemail.extra.VOICEMAIL_SMS_MESSAGE_BODY";

    /**
     * Extra included in {@link #ACTION_VOICEMAIL_SMS_RECEIVED} broadcast intents to indicate he
     * subscription ID of the phone account that received the SMS.
     */
    /** @hide */
    public static final String EXTRA_VOICEMAIL_SMS_SUBID =
            "com.android.voicemail.extra.VOICEMAIL_SMS_SUBID";
    public static final String EXTRA_VOICEMAIL_SMS = "android.provider.extra.VOICEMAIL_SMS";

    /**
     * Extra included in {@link Intent#ACTION_PROVIDER_CHANGED} broadcast intents to indicate if the
+8 −0
Original line number Diff line number Diff line
@@ -1560,6 +1560,14 @@
    <permission android:name="android.permission.BIND_INCALL_SERVICE"
        android:protectionLevel="signature|privileged" />

    <!-- Must be required by a link {@link android.telephony.VisualVoicemailService} to ensure that
         only the system can bind to it.
         <p>Protection level: signature|privileged
    -->
    <permission
      android:name="android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"
      android:protectionLevel="signature|privileged"/>

    <!-- Must be required by a {@link android.telecom.CallScreeningService},
         to ensure that only the system can bind to it.
         <p>Protection level: signature|privileged
Loading