OSDN Git Service

Merge "IMS: Use the slot based ImsManager factory reset API."
authorBrad Ebinger <breadley@google.com>
Mon, 16 Jul 2018 20:32:55 +0000 (13:32 -0700)
committerandroid-build-merger <android-build-merger@google.com>
Mon, 16 Jul 2018 20:32:55 +0000 (13:32 -0700)
am: 9e4ff6fca6

Change-Id: I42b0a06ed5707475d105646233ac49958de29d75

1  2 
src/com/android/settings/ResetNetworkConfirm.java

@@@ -150,29 -105,10 +150,30 @@@ public class ResetNetworkConfirm extend
                  }
              }
  
-             ImsManager.factoryReset(context);
+             ImsManager.getInstance(context,
+                      SubscriptionManager.getPhoneId(mSubId)).factoryReset();
              restoreDefaultApn(context);
 +            esimFactoryReset(context, context.getPackageName());
 +            // There has been issues when Sms raw table somehow stores orphan
 +            // fragments. They lead to garbled message when new fragments come
 +            // in and combied with those stale ones. In case this happens again,
 +            // user can reset all network settings which will clean up this table.
 +            cleanUpSmsRawTable(context);
 +        }
 +    };
 +
 +    private void cleanUpSmsRawTable(Context context) {
 +        ContentResolver resolver = context.getContentResolver();
 +        Uri uri = Uri.withAppendedPath(Telephony.Sms.CONTENT_URI, "raw/permanentDelete");
 +        resolver.delete(uri, null, null);
 +    }
  
 +    @VisibleForTesting
 +    void esimFactoryReset(Context context, String packageName) {
 +        if (mEraseEsim) {
 +            mEraseEsimTask = new EraseEsimAsyncTask(context, packageName);
 +            mEraseEsimTask.execute();
 +        } else {
              Toast.makeText(context, R.string.reset_network_complete_toast, Toast.LENGTH_SHORT)
                      .show();
          }