summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTyler Gunn <tgunn@google.com>2020-12-17 15:52:26 -0800
committerTyler Gunn <tgunn@google.com>2021-01-05 11:22:51 -0800
commit09c9583861bb8e6255f01fb3c595061586001358 (patch)
treedd01023f673aeb1546b6227cde7571ecc4636573
parentd9eb0959c6092bc4206e38cac3d6e7529e23aa27 (diff)
downloadvoip-09c9583861bb8e6255f01fb3c595061586001358.tar.gz
Deprecate android.net.rtp/android.net.sip.
The VOIP library provided in the Android platform suffers from a number of issues and has not been maintained in a long time. It does not support modern audio codecs, it uses broadcasts which rely on background receivers being woken up (which won't be), and does not work on IPV6 networks. Mark android.net.sip code as deprecated. This code has not been maintained in a long while and has a number of pretty big flaws including: lack of IPV6 support, reliance on broadcasts which are supported to wake up background receivers but don't. Recommendation is for developers to use any number of other open source SIP VOIP stacks available in the ecosystem. It is also not currently supported on all Android devices. Test: Build / observe API surface deprecation. Bug: 175910634 Change-Id: Id6c8810b187ce06d7035ba58ad8daf849e194c1f
-rw-r--r--src/java/android/net/rtp/AudioCodec.java3
-rw-r--r--src/java/android/net/rtp/AudioGroup.java3
-rw-r--r--src/java/android/net/rtp/AudioStream.java2
-rw-r--r--src/java/android/net/rtp/RtpStream.java2
-rw-r--r--src/java/android/net/sip/SipAudioCall.java2
-rw-r--r--src/java/android/net/sip/SipErrorCode.java2
-rw-r--r--src/java/android/net/sip/SipException.java2
-rw-r--r--src/java/android/net/sip/SipManager.java2
-rw-r--r--src/java/android/net/sip/SipProfile.java2
-rw-r--r--src/java/android/net/sip/SipRegistrationListener.java2
-rw-r--r--src/java/android/net/sip/SipSession.java2
11 files changed, 24 insertions, 0 deletions
diff --git a/src/java/android/net/rtp/AudioCodec.java b/src/java/android/net/rtp/AudioCodec.java
index 85255c8..9cae573 100644
--- a/src/java/android/net/rtp/AudioCodec.java
+++ b/src/java/android/net/rtp/AudioCodec.java
@@ -33,6 +33,9 @@ import java.util.Arrays;
* </pre>
*
* @see AudioStream
+ *
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer
+ * supported and should not be used as the basis of future VOIP apps.
*/
public class AudioCodec {
/**
diff --git a/src/java/android/net/rtp/AudioGroup.java b/src/java/android/net/rtp/AudioGroup.java
index 9d96006..fd5992f 100644
--- a/src/java/android/net/rtp/AudioGroup.java
+++ b/src/java/android/net/rtp/AudioGroup.java
@@ -63,6 +63,9 @@ import java.util.Map;
* the AudioGroups is in use.</p>
*
* @see AudioStream
+ *
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public class AudioGroup {
/**
diff --git a/src/java/android/net/rtp/AudioStream.java b/src/java/android/net/rtp/AudioStream.java
index 5cd1abc..e746e7d 100644
--- a/src/java/android/net/rtp/AudioStream.java
+++ b/src/java/android/net/rtp/AudioStream.java
@@ -41,6 +41,8 @@ import java.net.SocketException;
*
* @see RtpStream
* @see AudioGroup
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public class AudioStream extends RtpStream {
private AudioCodec mCodec;
diff --git a/src/java/android/net/rtp/RtpStream.java b/src/java/android/net/rtp/RtpStream.java
index b9d75cd..ad37455 100644
--- a/src/java/android/net/rtp/RtpStream.java
+++ b/src/java/android/net/rtp/RtpStream.java
@@ -27,6 +27,8 @@ import java.net.SocketException;
*
* <p class="note">Using this class requires
* {@link android.Manifest.permission#INTERNET} permission.</p>
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public class RtpStream {
/**
diff --git a/src/java/android/net/sip/SipAudioCall.java b/src/java/android/net/sip/SipAudioCall.java
index 363995c..4d70017 100644
--- a/src/java/android/net/sip/SipAudioCall.java
+++ b/src/java/android/net/sip/SipAudioCall.java
@@ -56,6 +56,8 @@ import java.net.UnknownHostException;
* <a href="{@docRoot}guide/topics/network/sip.html">Session Initiation Protocol</a>
* developer guide.</p>
* </div>
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public class SipAudioCall {
private static final String LOG_TAG = SipAudioCall.class.getSimpleName();
diff --git a/src/java/android/net/sip/SipErrorCode.java b/src/java/android/net/sip/SipErrorCode.java
index 509728f..e3f54eb 100644
--- a/src/java/android/net/sip/SipErrorCode.java
+++ b/src/java/android/net/sip/SipErrorCode.java
@@ -22,6 +22,8 @@ package android.net.sip;
* {@link SipSession.Listener#onError onError()},
* {@link SipSession.Listener#onCallChangeFailed onCallChangeFailed()} and
* {@link SipSession.Listener#onRegistrationFailed onRegistrationFailed()}.
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public class SipErrorCode {
/** Not an error. */
diff --git a/src/java/android/net/sip/SipException.java b/src/java/android/net/sip/SipException.java
index 0339395..b9cdb12 100644
--- a/src/java/android/net/sip/SipException.java
+++ b/src/java/android/net/sip/SipException.java
@@ -18,6 +18,8 @@ package android.net.sip;
/**
* Indicates a general SIP-related exception.
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public class SipException extends Exception {
public SipException() {
diff --git a/src/java/android/net/sip/SipManager.java b/src/java/android/net/sip/SipManager.java
index 39f66de..b74b07d 100644
--- a/src/java/android/net/sip/SipManager.java
+++ b/src/java/android/net/sip/SipManager.java
@@ -63,6 +63,8 @@ import java.util.List;
* <a href="{@docRoot}guide/topics/network/sip.html">Session Initiation Protocol</a>
* developer guide.</p>
* </div>
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public class SipManager {
/**
diff --git a/src/java/android/net/sip/SipProfile.java b/src/java/android/net/sip/SipProfile.java
index 14b0334..6f22e47 100644
--- a/src/java/android/net/sip/SipProfile.java
+++ b/src/java/android/net/sip/SipProfile.java
@@ -45,6 +45,8 @@ import javax.sip.address.URI;
* <a href="{@docRoot}guide/topics/network/sip.html">Session Initiation Protocol</a>
* developer guide.</p>
* </div>
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public class SipProfile implements Parcelable, Serializable, Cloneable {
private static final long serialVersionUID = 1L;
diff --git a/src/java/android/net/sip/SipRegistrationListener.java b/src/java/android/net/sip/SipRegistrationListener.java
index 9968cc7..0175e8a 100644
--- a/src/java/android/net/sip/SipRegistrationListener.java
+++ b/src/java/android/net/sip/SipRegistrationListener.java
@@ -18,6 +18,8 @@ package android.net.sip;
/**
* Listener for SIP registration events.
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public interface SipRegistrationListener {
/**
diff --git a/src/java/android/net/sip/SipSession.java b/src/java/android/net/sip/SipSession.java
index edbc66f..764871c 100644
--- a/src/java/android/net/sip/SipSession.java
+++ b/src/java/android/net/sip/SipSession.java
@@ -25,6 +25,8 @@ import android.telephony.Rlog;
* <p>You can get a {@link SipSession} from {@link SipManager} with {@link
* SipManager#createSipSession createSipSession()} (when initiating calls) or {@link
* SipManager#getSessionFor getSessionFor()} (when receiving calls).</p>
+ * @deprecated {@link android.net.sip.SipManager} and associated classes are no longer supported and
+ * should not be used as the basis of future VOIP apps.
*/
public final class SipSession {
private static final String TAG = "SipSession";