diff options
8 files changed, 65 insertions, 39 deletions
diff --git a/api/current.txt b/api/current.txt index 75344cbbf81e..054f72df3f3d 100644 --- a/api/current.txt +++ b/api/current.txt @@ -40775,8 +40775,10 @@ package android.telephony { method public java.lang.CharSequence getDisplayName(); method public java.lang.String getIccId(); method public int getIconTint(); - method public int getMcc(); - method public int getMnc(); + method public deprecated int getMcc(); + method public java.lang.String getMccString(); + method public deprecated int getMnc(); + method public java.lang.String getMncString(); method public java.lang.String getNumber(); method public int getSimSlotIndex(); method public int getSubscriptionId(); diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index 7c5afbac31a0..1b431be5208c 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -5295,8 +5295,8 @@ public final class ActivityThread { } } } - final List<String> oldPaths = - sPackageManager.getPreviousCodePaths(packageName); + final ArrayList<String> oldPaths = new ArrayList<>(); + LoadedApk.makePaths(this, loadedApk.getApplicationInfo(), oldPaths); loadedApk.updateApplicationInfo(aInfo, oldPaths); } catch (RemoteException e) { } diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl index 73a403dd41f7..92be900e71ce 100644 --- a/core/java/android/content/pm/IPackageManager.aidl +++ b/core/java/android/content/pm/IPackageManager.aidl @@ -648,8 +648,6 @@ interface IPackageManager { boolean isPackageDeviceAdminOnAnyUser(String packageName); - List<String> getPreviousCodePaths(in String packageName); - int getInstallReason(String packageName, int userId); ParceledListSlice getSharedLibraries(in String packageName, int flags, int userId); diff --git a/core/java/android/widget/DateTimeView.java b/core/java/android/widget/DateTimeView.java index 4db3607f95f9..c83f26c55f79 100644 --- a/core/java/android/widget/DateTimeView.java +++ b/core/java/android/widget/DateTimeView.java @@ -30,7 +30,6 @@ import android.content.IntentFilter; import android.content.res.Configuration; import android.content.res.TypedArray; import android.database.ContentObserver; -import android.icu.util.Calendar; import android.os.Handler; import android.text.format.Time; import android.util.AttributeSet; @@ -41,6 +40,7 @@ import com.android.internal.R; import java.text.DateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.Date; import java.util.TimeZone; @@ -293,7 +293,7 @@ public class DateTimeView extends TextView { */ private long computeNextMidnight(TimeZone timeZone) { Calendar c = Calendar.getInstance(); - c.setTimeZone(libcore.icu.DateUtilsBridge.icuTimeZone(timeZone)); + c.setTimeZone(timeZone); c.add(Calendar.DAY_OF_MONTH, 1); c.set(Calendar.HOUR_OF_DAY, 0); c.set(Calendar.MINUTE, 0); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java index d45a5ec70782..9ca8284280ac 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java @@ -930,7 +930,7 @@ public class NetworkControllerImpl extends BroadcastReceiver private SubscriptionInfo addSignalController(int id, int simSlotIndex) { SubscriptionInfo info = new SubscriptionInfo(id, "", simSlotIndex, "", "", 0, 0, "", 0, - null, 0, 0, ""); + null, null, null, ""); MobileSignalController controller = new MobileSignalController(mContext, mConfig, mHasMobileDataFeature, mPhone, mCallbackHandler, this, info, mSubDefaults, mReceiverHandler.getLooper()); diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 864c965af3f6..d136a55422d2 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -17901,22 +17901,6 @@ public class PackageManagerService extends IPackageManager.Stub } } - @Override - public List<String> getPreviousCodePaths(String packageName) { - final int callingUid = Binder.getCallingUid(); - final List<String> result = new ArrayList<>(); - if (getInstantAppPackageName(callingUid) != null) { - return result; - } - final PackageSetting ps = mSettings.mPackages.get(packageName); - if (ps != null - && ps.oldCodePaths != null - && !filterAppAccessLPr(ps, callingUid, UserHandle.getUserId(callingUid))) { - result.addAll(ps.oldCodePaths); - } - return result; - } - private void replaceNonSystemPackageLIF(PackageParser.Package deletedPackage, PackageParser.Package pkg, final int policyFlags, int scanFlags, UserHandle user, int[] allUsers, String installerPackageName, PackageInstalledInfo res, diff --git a/telephony/java/android/telephony/SubscriptionInfo.java b/telephony/java/android/telephony/SubscriptionInfo.java index 936505ca407d..d76e39b83801 100644 --- a/telephony/java/android/telephony/SubscriptionInfo.java +++ b/telephony/java/android/telephony/SubscriptionInfo.java @@ -33,9 +33,9 @@ import android.os.Build; import android.os.Parcel; import android.os.Parcelable; import android.util.DisplayMetrics; +import android.util.Log; import java.util.Arrays; -import java.util.ArrayList; import java.util.List; /** @@ -105,12 +105,12 @@ public class SubscriptionInfo implements Parcelable { /** * Mobile Country Code */ - private int mMcc; + private String mMcc; /** * Mobile Network Code */ - private int mMnc; + private String mMnc; /** * ISO Country code for the subscription's provider @@ -138,11 +138,11 @@ public class SubscriptionInfo implements Parcelable { * @hide */ public SubscriptionInfo(int id, String iccId, int simSlotIndex, CharSequence displayName, - CharSequence carrierName, int nameSource, int iconTint, String number, int roaming, - Bitmap icon, int mcc, int mnc, String countryIso) { + CharSequence carrierName, int nameSource, int iconTint, String number, int roaming, + Bitmap icon, String mcc, String mnc, String countryIso) { this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, - roaming, icon, mcc, mnc, countryIso, false /* isEmbedded */, - null /* accessRules */, null /* accessRules */); + roaming, icon, mcc, mnc, countryIso, false /* isEmbedded */, + null /* accessRules */, null /* accessRules */); } /** @@ -150,7 +150,7 @@ public class SubscriptionInfo implements Parcelable { */ public SubscriptionInfo(int id, String iccId, int simSlotIndex, CharSequence displayName, CharSequence carrierName, int nameSource, int iconTint, String number, int roaming, - Bitmap icon, int mcc, int mnc, String countryIso, boolean isEmbedded, + Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, @Nullable UiccAccessRule[] accessRules) { this(id, iccId, simSlotIndex, displayName, carrierName, nameSource, iconTint, number, roaming, icon, mcc, mnc, countryIso, isEmbedded, accessRules, null /* cardId */); @@ -161,7 +161,7 @@ public class SubscriptionInfo implements Parcelable { */ public SubscriptionInfo(int id, String iccId, int simSlotIndex, CharSequence displayName, CharSequence carrierName, int nameSource, int iconTint, String number, int roaming, - Bitmap icon, int mcc, int mnc, String countryIso, boolean isEmbedded, + Bitmap icon, String mcc, String mnc, String countryIso, boolean isEmbedded, @Nullable UiccAccessRule[] accessRules, String cardId) { this.mId = id; this.mIccId = iccId; @@ -316,15 +316,43 @@ public class SubscriptionInfo implements Parcelable { /** * @return the MCC. + * @deprecated Use {@link #getMccString()} instead. */ + @Deprecated public int getMcc() { - return this.mMcc; + try { + return this.mMcc == null ? 0 : Integer.valueOf(this.mMcc); + } catch (NumberFormatException e) { + Log.w(SubscriptionInfo.class.getSimpleName(), "MCC string is not a number"); + return 0; + } } /** * @return the MNC. + * @deprecated Use {@link #getMncString()} instead. */ + @Deprecated public int getMnc() { + try { + return this.mMnc == null ? 0 : Integer.valueOf(this.mMnc); + } catch (NumberFormatException e) { + Log.w(SubscriptionInfo.class.getSimpleName(), "MNC string is not a number"); + return 0; + } + } + + /** + * @return The MCC, as a string. + */ + public String getMccString() { + return this.mMcc; + } + + /** + * @return The MNC, as a string. + */ + public String getMncString() { return this.mMnc; } @@ -425,8 +453,8 @@ public class SubscriptionInfo implements Parcelable { int iconTint = source.readInt(); String number = source.readString(); int dataRoaming = source.readInt(); - int mcc = source.readInt(); - int mnc = source.readInt(); + String mcc = source.readString(); + String mnc = source.readString(); String countryIso = source.readString(); Bitmap iconBitmap = Bitmap.CREATOR.createFromParcel(source); boolean isEmbedded = source.readBoolean(); @@ -455,8 +483,8 @@ public class SubscriptionInfo implements Parcelable { dest.writeInt(mIconTint); dest.writeString(mNumber); dest.writeInt(mDataRoaming); - dest.writeInt(mMcc); - dest.writeInt(mMnc); + dest.writeString(mMcc); + dest.writeString(mMnc); dest.writeString(mCountryIso); mIconBitmap.writeToParcel(dest, flags); dest.writeBoolean(mIsEmbedded); diff --git a/telephony/java/android/telephony/SubscriptionManager.java b/telephony/java/android/telephony/SubscriptionManager.java index 5a60aa669d80..310d2bf2083b 100644 --- a/telephony/java/android/telephony/SubscriptionManager.java +++ b/telephony/java/android/telephony/SubscriptionManager.java @@ -243,6 +243,20 @@ public class SubscriptionManager { public static final int SIM_PROVISIONED = 0; /** + * TelephonyProvider column name for the MCC associated with a SIM, stored as a string. + * <P>Type: TEXT (String)</P> + * @hide + */ + public static final String MCC_STRING = "mcc_string"; + + /** + * TelephonyProvider column name for the MNC associated with a SIM, stored as a string. + * <P>Type: TEXT (String)</P> + * @hide + */ + public static final String MNC_STRING = "mnc_string"; + + /** * TelephonyProvider column name for the MCC associated with a SIM. * <P>Type: INTEGER (int)</P> * @hide |