From 5dd05a4931ca0fbfc8d9d56e5555dc6f0dc2aea3 Mon Sep 17 00:00:00 2001 From: Sarah Chin Date: Fri, 10 Jan 2020 19:33:35 +0000 Subject: [PATCH] Revert "Make MmsManager public" This reverts commit 2137c9bd3905def08015d83cf15dda1bc3d97679. Reason for revert: Reverted internally Change-Id: I6bed6facba681fa4abee739be50e21700b37c84a Merged-In: I5952168aba996a10554406a9f1675ac3b04fa41f --- api/current.txt | 12 ++------ core/java/android/content/Context.java | 12 -------- mms/java/android/telephony/MmsManager.java | 29 ++++++++++--------- .../java/android/telephony/SmsManager.java | 22 +++++--------- 4 files changed, 25 insertions(+), 50 deletions(-) diff --git a/api/current.txt b/api/current.txt index 3b14a35d11e9e..cf9a2927bf01b 100644 --- a/api/current.txt +++ b/api/current.txt @@ -9848,7 +9848,6 @@ package android.content { field public static final String MEDIA_ROUTER_SERVICE = "media_router"; field public static final String MEDIA_SESSION_SERVICE = "media_session"; field public static final String MIDI_SERVICE = "midi"; - field public static final String MMS_SERVICE = "mms"; field public static final int MODE_APPEND = 32768; // 0x8000 field public static final int MODE_ENABLE_WRITE_AHEAD_LOGGING = 8; // 0x8 field @Deprecated public static final int MODE_MULTI_PROCESS = 4; // 0x4 @@ -44905,11 +44904,6 @@ package android.telephony { method @Nullable public android.telephony.mbms.StreamingService startStreaming(android.telephony.mbms.StreamingServiceInfo, @NonNull java.util.concurrent.Executor, android.telephony.mbms.StreamingServiceCallback); } - public final class MmsManager { - method public void downloadMultimediaMessage(int, @NonNull String, @NonNull android.net.Uri, @Nullable android.os.Bundle, @Nullable android.app.PendingIntent); - method public void sendMultimediaMessage(int, @NonNull android.net.Uri, @Nullable String, @Nullable android.os.Bundle, @Nullable android.app.PendingIntent); - } - @Deprecated public class NeighboringCellInfo implements android.os.Parcelable { ctor @Deprecated public NeighboringCellInfo(); ctor @Deprecated public NeighboringCellInfo(int, int); @@ -45145,8 +45139,8 @@ package android.telephony { method public String createAppSpecificSmsToken(android.app.PendingIntent); method @Nullable public String createAppSpecificSmsTokenWithPackageInfo(@Nullable String, @NonNull android.app.PendingIntent); method public java.util.ArrayList divideMessage(String); - method @Deprecated public void downloadMultimediaMessage(android.content.Context, String, android.net.Uri, android.os.Bundle, android.app.PendingIntent); - method @NonNull public android.os.Bundle getCarrierConfigValues(); + method public void downloadMultimediaMessage(android.content.Context, String, android.net.Uri, android.os.Bundle, android.app.PendingIntent); + method @Nullable public android.os.Bundle getCarrierConfigValues(); method public static android.telephony.SmsManager getDefault(); method public static int getDefaultSmsSubscriptionId(); method public static android.telephony.SmsManager getSmsManagerForSubscriptionId(int); @@ -45155,7 +45149,7 @@ package android.telephony { method public int getSubscriptionId(); method public void injectSmsPdu(byte[], String, android.app.PendingIntent); method public void sendDataMessage(String, String, short, byte[], android.app.PendingIntent, android.app.PendingIntent); - method @Deprecated public void sendMultimediaMessage(android.content.Context, android.net.Uri, String, android.os.Bundle, android.app.PendingIntent); + method public void sendMultimediaMessage(android.content.Context, android.net.Uri, String, android.os.Bundle, android.app.PendingIntent); method public void sendMultipartTextMessage(String, String, java.util.ArrayList, java.util.ArrayList, java.util.ArrayList); method public void sendTextMessage(String, String, String, android.app.PendingIntent, android.app.PendingIntent); method @RequiresPermission(allOf={android.Manifest.permission.MODIFY_PHONE_STATE, android.Manifest.permission.SEND_SMS}) public void sendTextMessageWithoutPersisting(String, String, String, android.app.PendingIntent, android.app.PendingIntent); diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java index 6ebded5505e99..f3596411fb6bc 100644 --- a/core/java/android/content/Context.java +++ b/core/java/android/content/Context.java @@ -3318,7 +3318,6 @@ public abstract class Context { TELEPHONY_SUBSCRIPTION_SERVICE, CARRIER_CONFIG_SERVICE, EUICC_SERVICE, - MMS_SERVICE, TELECOM_SERVICE, CLIPBOARD_SERVICE, INPUT_METHOD_SERVICE, @@ -3514,8 +3513,6 @@ public abstract class Context { * @see android.telephony.CarrierConfigManager * @see #EUICC_SERVICE * @see android.telephony.euicc.EuiccManager - * @see #MMS_SERVICE - * @see android.telephony.MmsManager * @see #INPUT_METHOD_SERVICE * @see android.view.inputmethod.InputMethodManager * @see #UI_MODE_SERVICE @@ -4153,15 +4150,6 @@ public abstract class Context { @SystemApi public static final String EUICC_CARD_SERVICE = "euicc_card"; - /** - * Use with {@link #getSystemService(String)} to retrieve a - * {@link android.telephony.MmsManager} to send/receive MMS messages. - * - * @see #getSystemService(String) - * @see android.telephony.MmsManager - */ - public static final String MMS_SERVICE = "mms"; - /** * Use with {@link #getSystemService(String)} to retrieve a * {@link android.content.ClipboardManager} for accessing and modifying diff --git a/mms/java/android/telephony/MmsManager.java b/mms/java/android/telephony/MmsManager.java index 24ea3cfc5a75d..65542673a6075 100644 --- a/mms/java/android/telephony/MmsManager.java +++ b/mms/java/android/telephony/MmsManager.java @@ -16,11 +16,8 @@ package android.telephony; -import android.annotation.NonNull; -import android.annotation.Nullable; import android.app.ActivityThread; import android.app.PendingIntent; -import android.content.Context; import android.net.Uri; import android.os.Bundle; import android.os.RemoteException; @@ -30,16 +27,22 @@ import com.android.internal.telephony.IMms; /** * Manages MMS operations such as sending multimedia messages. + * Get this object by calling the static method {@link #getInstance()}. + * @hide */ -public final class MmsManager { +public class MmsManager { private static final String TAG = "MmsManager"; - private final Context mContext; + + /** Singleton object constructed during class initialization. */ + private static final MmsManager sInstance = new MmsManager(); /** - * @hide + * Get the MmsManager singleton instance. + * + * @return the {@link MmsManager} singleton instance. */ - public MmsManager(@NonNull Context context) { - mContext = context; + public static MmsManager getInstance() { + return sInstance; } /** @@ -53,9 +56,8 @@ public final class MmsManager { * @param sentIntent if not NULL this PendingIntent is broadcast when the message * is successfully sent, or failed */ - public void sendMultimediaMessage(int subId, @NonNull Uri contentUri, - @Nullable String locationUrl, @Nullable Bundle configOverrides, - @Nullable PendingIntent sentIntent) { + public void sendMultimediaMessage(int subId, Uri contentUri, String locationUrl, + Bundle configOverrides, PendingIntent sentIntent) { try { final IMms iMms = IMms.Stub.asInterface(ServiceManager.getService("imms")); if (iMms == null) { @@ -82,9 +84,8 @@ public final class MmsManager { * broadcast when the message is downloaded, or the download is failed * @throws IllegalArgumentException if locationUrl or contentUri is empty */ - public void downloadMultimediaMessage(int subId, @NonNull String locationUrl, - @NonNull Uri contentUri, @Nullable Bundle configOverrides, - @Nullable PendingIntent downloadedIntent) { + public void downloadMultimediaMessage(int subId, String locationUrl, Uri contentUri, + Bundle configOverrides, PendingIntent downloadedIntent) { try { final IMms iMms = IMms.Stub.asInterface(ServiceManager.getService("imms")); if (iMms == null) { diff --git a/telephony/java/android/telephony/SmsManager.java b/telephony/java/android/telephony/SmsManager.java index 3c1e21539f189..19571706e230f 100644 --- a/telephony/java/android/telephony/SmsManager.java +++ b/telephony/java/android/telephony/SmsManager.java @@ -2348,18 +2348,14 @@ public final class SmsManager { * @param sentIntent if not NULL this PendingIntent is * broadcast when the message is successfully sent, or failed * @throws IllegalArgumentException if contentUri is empty - * @deprecated use {@link MmsManager#sendMultimediaMessage} instead. */ public void sendMultimediaMessage(Context context, Uri contentUri, String locationUrl, Bundle configOverrides, PendingIntent sentIntent) { if (contentUri == null) { throw new IllegalArgumentException("Uri contentUri null"); } - MmsManager m = (MmsManager) context.getSystemService(Context.MMS_SERVICE); - if (m != null) { - m.sendMultimediaMessage(getSubscriptionId(), contentUri, locationUrl, configOverrides, - sentIntent); - } + MmsManager.getInstance().sendMultimediaMessage(getSubscriptionId(), contentUri, + locationUrl, configOverrides, sentIntent); } /** @@ -2383,7 +2379,6 @@ public final class SmsManager { * @param downloadedIntent if not NULL this PendingIntent is * broadcast when the message is downloaded, or the download is failed * @throws IllegalArgumentException if locationUrl or contentUri is empty - * @deprecated use {@link MmsManager#downloadMultimediaMessage} instead. */ public void downloadMultimediaMessage(Context context, String locationUrl, Uri contentUri, Bundle configOverrides, PendingIntent downloadedIntent) { @@ -2393,11 +2388,8 @@ public final class SmsManager { if (contentUri == null) { throw new IllegalArgumentException("Uri contentUri null"); } - MmsManager m = (MmsManager) context.getSystemService(Context.MMS_SERVICE); - if (m != null) { - m.downloadMultimediaMessage(getSubscriptionId(), locationUrl, contentUri, - configOverrides, downloadedIntent); - } + MmsManager.getInstance().downloadMultimediaMessage(getSubscriptionId(), locationUrl, + contentUri, configOverrides, downloadedIntent); } // MMS send/download failure result codes @@ -2439,9 +2431,9 @@ public final class SmsManager { *

* * @return the bundle key/values pairs that contains MMS configuration values - * or an empty bundle if they cannot be found. */ - @NonNull public Bundle getCarrierConfigValues() { + @Nullable + public Bundle getCarrierConfigValues() { try { ISms iSms = getISmsService(); if (iSms != null) { @@ -2450,7 +2442,7 @@ public final class SmsManager { } catch (RemoteException ex) { // ignore it } - return new Bundle(); + return null; } /**