From e9d96b7bc1660688ae4beec79fc9141a6e8f374c Mon Sep 17 00:00:00 2001 From: Malcolm Chen Date: Wed, 19 Apr 2017 16:12:45 -0700 Subject: [PATCH] Reset APN when doing network reset. Bug: 35956245 Test: Manual test Change-Id: Iadb00c55d41a51204be1678bb77c2367e1bcb775 --- .../android/settings/ResetNetworkConfirm.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/com/android/settings/ResetNetworkConfirm.java b/src/com/android/settings/ResetNetworkConfirm.java index d220e739ccd..f70d3c27efb 100644 --- a/src/com/android/settings/ResetNetworkConfirm.java +++ b/src/com/android/settings/ResetNetworkConfirm.java @@ -18,9 +18,11 @@ package com.android.settings; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothManager; +import android.content.ContentResolver; import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkPolicyManager; +import android.net.Uri; import android.net.wifi.WifiManager; import android.os.Bundle; import android.os.UserHandle; @@ -104,12 +106,27 @@ public class ResetNetworkConfirm extends OptionsMenuFragment { } ImsManager.factoryReset(context); + restoreDefaultApn(context); Toast.makeText(context, R.string.reset_network_complete_toast, Toast.LENGTH_SHORT) .show(); } }; + /** + * Restore APN settings to default. + */ + private void restoreDefaultApn(Context context) { + Uri uri = Uri.parse(ApnSettings.RESTORE_CARRIERS_URI); + + if (SubscriptionManager.isUsableSubIdValue(mSubId)) { + uri = Uri.withAppendedPath(uri, "subId/" + String.valueOf(mSubId)); + } + + ContentResolver resolver = context.getContentResolver(); + resolver.delete(uri, null, null); + } + /** * Configure the UI for the final confirmation interaction */