summaryrefslogtreecommitdiffstats
path: root/telecomm
diff options
context:
space:
mode:
authorTyler Gunn <tgunn@google.com>2014-08-30 06:26:02 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-08-30 06:26:04 +0000
commitb730542b7596270e1801667c9d1fd86433a23d66 (patch)
tree58cd289d2cd72d0cf4fb9152240ef5f4cf6254b2 /telecomm
parent8b63a2bf503f7feca5c24f1cf9bca657dac9eb25 (diff)
parentbe74de0978a7eaa577f6b61902b550a3161aff8b (diff)
downloadframeworks_base-b730542b7596270e1801667c9d1fd86433a23d66.zip
frameworks_base-b730542b7596270e1801667c9d1fd86433a23d66.tar.gz
frameworks_base-b730542b7596270e1801667c9d1fd86433a23d66.tar.bz2
Merge "Hiding videoState values in telecomm APIs. (1/3)" into lmp-dev
Diffstat (limited to 'telecomm')
-rw-r--r--telecomm/java/android/telecomm/CameraCapabilities.java1
-rw-r--r--telecomm/java/android/telecomm/Connection.java9
-rw-r--r--telecomm/java/android/telecomm/ConnectionRequest.java16
-rw-r--r--telecomm/java/android/telecomm/ConnectionService.java27
-rw-r--r--telecomm/java/android/telecomm/PhoneAccount.java1
-rw-r--r--telecomm/java/android/telecomm/PhoneCapabilities.java20
-rw-r--r--telecomm/java/android/telecomm/RemoteConnection.java15
-rw-r--r--telecomm/java/com/android/internal/telecomm/IConnectionService.aidl4
8 files changed, 82 insertions, 11 deletions
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);