diff options
-rw-r--r-- | api/current.txt | 24 | ||||
-rw-r--r-- | telecomm/java/android/telecomm/CameraCapabilities.java | 1 | ||||
-rw-r--r-- | telecomm/java/android/telecomm/Connection.java | 9 | ||||
-rw-r--r-- | telecomm/java/android/telecomm/ConnectionRequest.java | 16 | ||||
-rw-r--r-- | telecomm/java/android/telecomm/ConnectionService.java | 27 | ||||
-rw-r--r-- | telecomm/java/android/telecomm/PhoneAccount.java | 1 | ||||
-rw-r--r-- | telecomm/java/android/telecomm/PhoneCapabilities.java | 20 | ||||
-rw-r--r-- | telecomm/java/android/telecomm/RemoteConnection.java | 15 | ||||
-rw-r--r-- | telecomm/java/com/android/internal/telecomm/IConnectionService.aidl | 4 |
9 files changed, 86 insertions, 31 deletions
diff --git a/api/current.txt b/api/current.txt index 20f58e6..009b534 100644 --- a/api/current.txt +++ b/api/current.txt @@ -28266,17 +28266,6 @@ package android.telecomm { field public final int supportedRouteMask; } - public final class CameraCapabilities implements android.os.Parcelable { - ctor public CameraCapabilities(boolean, float, int, int); - method public int describeContents(); - method public int getHeight(); - method public float getMaxZoom(); - method public int getWidth(); - method public boolean isZoomSupported(); - method public void writeToParcel(android.os.Parcel, int); - field public static final android.os.Parcelable.Creator CREATOR; - } - public abstract class Conference { ctor public Conference(android.telecomm.PhoneAccountHandle); method public boolean addConnection(android.telecomm.Connection); @@ -28316,7 +28305,7 @@ package android.telecomm { method public final android.telecomm.StatusHints getStatusHints(); method public final boolean isRequestingRingback(); method public void onAbort(); - method public void onAnswer(int); + method public void onAnswer(); method public void onConferenceWith(android.telecomm.Connection); method public void onDisconnect(); method public void onHold(); @@ -28357,7 +28346,7 @@ package android.telecomm { } public final class ConnectionRequest implements android.os.Parcelable { - ctor public ConnectionRequest(android.telecomm.PhoneAccountHandle, android.net.Uri, int, android.os.Bundle, int); + ctor public ConnectionRequest(android.telecomm.PhoneAccountHandle, android.net.Uri, int, android.os.Bundle); method public int describeContents(); method public android.telecomm.PhoneAccountHandle getAccountHandle(); method public android.os.Bundle getExtras(); @@ -28408,7 +28397,6 @@ package android.telecomm { method public void writeToParcel(android.os.Parcel, int); field public static final int CAPABILITY_CONNECTION_MANAGER = 1; // 0x1 field public static final int CAPABILITY_SIM_SUBSCRIPTION = 4; // 0x4 - field public static final int CAPABILITY_VIDEO_CALLING = 8; // 0x8 field public static final android.os.Parcelable.Creator CREATOR; } @@ -28436,18 +28424,14 @@ package android.telecomm { public final class PhoneCapabilities { method public static java.lang.String toString(int); field public static final int ADD_CALL = 16; // 0x10 - field public static final int ALL = 3327; // 0xcff + field public static final int ALL = 255; // 0xff field public static final int GENERIC_CONFERENCE = 128; // 0x80 field public static final int HOLD = 1; // 0x1 field public static final int MERGE_CALLS = 4; // 0x4 field public static final int MUTE = 64; // 0x40 field public static final int RESPOND_VIA_TEXT = 32; // 0x20 - field public static final int SUPPORTS_VT_LOCAL = 256; // 0x100 - field public static final int SUPPORTS_VT_REMOTE = 512; // 0x200 field public static final int SUPPORT_HOLD = 2; // 0x2 field public static final int SWAP_CALLS = 8; // 0x8 - field public static final int VoLTE = 1024; // 0x400 - field public static final int VoWIFI = 2048; // 0x800 } public class PropertyPresentation { @@ -28485,7 +28469,7 @@ package android.telecomm { public final class RemoteConnection { method public void abort(); method public void addListener(android.telecomm.RemoteConnection.Listener); - method public void answer(int); + method public void answer(); method public void disconnect(); method public boolean getAudioModeIsVoip(); method public int getCallCapabilities(); diff --git a/telecomm/java/android/telecomm/CameraCapabilities.java b/telecomm/java/android/telecomm/CameraCapabilities.java index 7c7dde1..5f860db 100644 --- a/telecomm/java/android/telecomm/CameraCapabilities.java +++ b/telecomm/java/android/telecomm/CameraCapabilities.java @@ -21,6 +21,7 @@ import android.os.Parcelable; /** * Represents the camera capabilities important to a Video Telephony provider. + * @hide */ public final class CameraCapabilities implements Parcelable { diff --git a/telecomm/java/android/telecomm/Connection.java b/telecomm/java/android/telecomm/Connection.java index d8f487f..f349659 100644 --- a/telecomm/java/android/telecomm/Connection.java +++ b/telecomm/java/android/telecomm/Connection.java @@ -1012,11 +1012,20 @@ public abstract class Connection { * a request to accept. * * @param videoState The video state in which to answer the call. + * @hide */ public void onAnswer(int videoState) {} /** * Notifies this Connection, which is in {@link #STATE_RINGING}, of + * a request to accept. + */ + public void onAnswer() { + onAnswer(VideoProfile.VideoState.AUDIO_ONLY); + } + + /** + * Notifies this Connection, which is in {@link #STATE_RINGING}, of * a request to reject. */ public void onReject() {} diff --git a/telecomm/java/android/telecomm/ConnectionRequest.java b/telecomm/java/android/telecomm/ConnectionRequest.java index b991af1..39ae59a 100644 --- a/telecomm/java/android/telecomm/ConnectionRequest.java +++ b/telecomm/java/android/telecomm/ConnectionRequest.java @@ -40,7 +40,23 @@ public final class ConnectionRequest implements Parcelable { * @param handlePresentation The {@link PropertyPresentation} which controls how the handle * is shown. * @param extras Application-specific extra data. + */ + public ConnectionRequest( + PhoneAccountHandle accountHandle, + Uri handle, + int handlePresentation, + Bundle extras) { + this(accountHandle, handle, handlePresentation, extras, VideoProfile.VideoState.AUDIO_ONLY); + } + + /** + * @param accountHandle The accountHandle which should be used to place the call. + * @param handle The handle (e.g., phone number) to which the {@link Connection} is to connect. + * @param handlePresentation The {@link PropertyPresentation} which controls how the handle + * is shown. + * @param extras Application-specific extra data. * @param videoState Determines the video state for the connection. + * @hide */ public ConnectionRequest( PhoneAccountHandle accountHandle, diff --git a/telecomm/java/android/telecomm/ConnectionService.java b/telecomm/java/android/telecomm/ConnectionService.java index 4696815..19cf622 100644 --- a/telecomm/java/android/telecomm/ConnectionService.java +++ b/telecomm/java/android/telecomm/ConnectionService.java @@ -71,6 +71,7 @@ public abstract class ConnectionService extends Service { private static final int MSG_ON_POST_DIAL_CONTINUE = 14; private static final int MSG_ON_PHONE_ACCOUNT_CLICKED = 15; private static final int MSG_REMOVE_CONNECTION_SERVICE_ADAPTER = 16; + private static final int MSG_ANSWER_VIDEO = 17; private static Connection sNullConnection; @@ -116,11 +117,17 @@ public abstract class ConnectionService extends Service { } @Override - public void answer(String callId, int videoState) { + /** @hide */ + public void answerVideo(String callId, int videoState) { SomeArgs args = SomeArgs.obtain(); args.arg1 = callId; args.argi1 = videoState; - mHandler.obtainMessage(MSG_ANSWER, args).sendToTarget(); + mHandler.obtainMessage(MSG_ANSWER_VIDEO, args).sendToTarget(); + } + + @Override + public void answer(String callId) { + mHandler.obtainMessage(MSG_ANSWER, callId).sendToTarget(); } @Override @@ -234,12 +241,15 @@ public abstract class ConnectionService extends Service { case MSG_ABORT: abort((String) msg.obj); break; - case MSG_ANSWER: { + case MSG_ANSWER: + answer((String) msg.obj); + break; + case MSG_ANSWER_VIDEO: { SomeArgs args = (SomeArgs) msg.obj; try { String callId = (String) args.arg1; int videoState = args.argi1; - answer(callId, videoState); + answerVideo(callId, videoState); } finally { args.recycle(); } @@ -545,11 +555,16 @@ public abstract class ConnectionService extends Service { findConnectionForAction(callId, "abort").onAbort(); } - private void answer(String callId, int videoState) { - Log.d(this, "answer %s", callId); + private void answerVideo(String callId, int videoState) { + Log.d(this, "answerVideo %s", callId); findConnectionForAction(callId, "answer").onAnswer(videoState); } + private void answer(String callId) { + Log.d(this, "answer %s", callId); + findConnectionForAction(callId, "answer").onAnswer(); + } + private void reject(String callId) { Log.d(this, "reject %s", callId); findConnectionForAction(callId, "reject").onReject(); diff --git a/telecomm/java/android/telecomm/PhoneAccount.java b/telecomm/java/android/telecomm/PhoneAccount.java index 97a7b9d..5b46409 100644 --- a/telecomm/java/android/telecomm/PhoneAccount.java +++ b/telecomm/java/android/telecomm/PhoneAccount.java @@ -73,6 +73,7 @@ public class PhoneAccount implements Parcelable { * Flag indicating that this {@code PhoneAccount} is capable of placing video calls. * <p> * See {@link #getCapabilities} + * @hide */ public static final int CAPABILITY_VIDEO_CALLING = 0x8; diff --git a/telecomm/java/android/telecomm/PhoneCapabilities.java b/telecomm/java/android/telecomm/PhoneCapabilities.java index 0c6a1ef..3d76608 100644 --- a/telecomm/java/android/telecomm/PhoneCapabilities.java +++ b/telecomm/java/android/telecomm/PhoneCapabilities.java @@ -45,18 +45,32 @@ public final class PhoneCapabilities { /** Call supports generic conference mode. */ public static final int GENERIC_CONFERENCE = 0x00000080; - /** Local device supports video telephony. */ + /** + * Local device supports video telephony. + * @hide + */ public static final int SUPPORTS_VT_LOCAL = 0x00000100; - /** Remote device supports video telephony. */ + /** + * Remote device supports video telephony. + * @hide + */ public static final int SUPPORTS_VT_REMOTE = 0x00000200; + /** + * Call is using voice over LTE. + * @hide + */ public static final int VoLTE = 0x00000400; + /** + * Call is using voice over WIFI. + * @hide + */ public static final int VoWIFI = 0x00000800; public static final int ALL = HOLD | SUPPORT_HOLD | MERGE_CALLS | SWAP_CALLS | ADD_CALL - | RESPOND_VIA_TEXT | MUTE | GENERIC_CONFERENCE | VoLTE | VoWIFI; + | RESPOND_VIA_TEXT | MUTE | GENERIC_CONFERENCE; public static String toString(int capabilities) { StringBuilder builder = new StringBuilder(); diff --git a/telecomm/java/android/telecomm/RemoteConnection.java b/telecomm/java/android/telecomm/RemoteConnection.java index 8c86b15..b7e4b2a 100644 --- a/telecomm/java/android/telecomm/RemoteConnection.java +++ b/telecomm/java/android/telecomm/RemoteConnection.java @@ -426,12 +426,25 @@ public final class RemoteConnection { /** * Instructs this {@link Connection#STATE_RINGING} {@code RemoteConnection} to answer. + */ + public void answer() { + try { + if (mConnected) { + mConnectionService.answer(mConnectionId); + } + } catch (RemoteException ignored) { + } + } + + /** + * Instructs this {@link Connection#STATE_RINGING} {@code RemoteConnection} to answer. * @param videoState The video state in which to answer the call. + * @hide */ public void answer(int videoState) { try { if (mConnected) { - mConnectionService.answer(mConnectionId, videoState); + mConnectionService.answerVideo(mConnectionId, videoState); } } catch (RemoteException ignored) { } diff --git a/telecomm/java/com/android/internal/telecomm/IConnectionService.aidl b/telecomm/java/com/android/internal/telecomm/IConnectionService.aidl index c412424..32b877d 100644 --- a/telecomm/java/com/android/internal/telecomm/IConnectionService.aidl +++ b/telecomm/java/com/android/internal/telecomm/IConnectionService.aidl @@ -43,7 +43,9 @@ oneway interface IConnectionService { void abort(String callId); - void answer(String callId, int videoState); + void answerVideo(String callId, int videoState); + + void answer(String callId); void reject(String callId); |