Additional changes to SubscriptionManager API as per API council.

bug: 17575308
Change-Id: Idd98aa46c15a9219ccf28091c62602ac8bf16c62
diff --git a/src/com/android/settings/DataUsageSummary.java b/src/com/android/settings/DataUsageSummary.java
index a625b47..a0a237d 100644
--- a/src/com/android/settings/DataUsageSummary.java
+++ b/src/com/android/settings/DataUsageSummary.java
@@ -195,6 +195,7 @@
     private INetworkStatsService mStatsService;
     private NetworkPolicyManager mPolicyManager;
     private TelephonyManager mTelephonyManager;
+    private SubscriptionManager mSubscriptionManager;
 
     private INetworkStatsSession mStatsSession;
 
@@ -286,13 +287,14 @@
                 ServiceManager.getService(Context.NETWORK_STATS_SERVICE));
         mPolicyManager = NetworkPolicyManager.from(context);
         mTelephonyManager = TelephonyManager.from(context);
+        mSubscriptionManager = SubscriptionManager.from(context);
 
         mPrefs = getActivity().getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE);
 
         mPolicyEditor = new NetworkPolicyEditor(mPolicyManager);
         mPolicyEditor.read();
 
-        mSubInfoList = SimSettings.getSortedSubInfoList(getActivity());
+        mSubInfoList = mSubscriptionManager.getActiveSubscriptionInfoList();
         mMobileTagMap = initMobileTabTag(mSubInfoList);
 
         try {
@@ -942,7 +944,7 @@
         } else {
             //SUB SELECT
             isEnable = mTelephonyManager.getDataEnabled()
-                && (subId == SubscriptionManager.getDefaultDataSubId());
+                && (subId == mSubscriptionManager.getDefaultDataSubId());
         }
         return isEnable;
     }
@@ -1131,8 +1133,8 @@
 
     private void handleMultiSimDataDialog() {
         final SubscriptionInfo currentSir = getCurrentTabSubInfo(getActivity());
-        final SubscriptionInfo nextSir = SubscriptionManager.getSubscriptionInfoForSubscriber(
-                SubscriptionManager.getDefaultDataSubId());
+        final SubscriptionInfo nextSir = mSubscriptionManager.getActiveSubscriptionInfo(
+                mSubscriptionManager.getDefaultDataSubId());
 
         if (currentSir.getSubscriptionId() == nextSir.getSubscriptionId()) {
             setMobileDataEnabled(true);
@@ -1149,7 +1151,7 @@
         builder.setPositiveButton(R.string.okay, new DialogInterface.OnClickListener() {
             @Override
             public void onClick(DialogInterface dialog, int id) {
-                SubscriptionManager.setDefaultDataSubId(currentSir.getSubscriptionId());
+                mSubscriptionManager.setDefaultDataSubId(currentSir.getSubscriptionId());
                 setMobileDataEnabled(true);
                 updateBody();
             }
@@ -2246,7 +2248,7 @@
         final NetworkTemplate template = intent.getParcelableExtra(EXTRA_NETWORK_TEMPLATE);
         if (template == null) {
             final int subId = intent.getIntExtra(PhoneConstants.SUBSCRIPTION_KEY,
-                    SubscriptionManager.INVALID_SUB_ID);
+                    SubscriptionManager.INVALID_SUBSCRIPTION_ID);
             if (SubscriptionManager.isValidSubId(subId)) {
                 return TAB_MOBILE + String.valueOf(subId);
             }
@@ -2339,8 +2341,9 @@
         final ConnectivityManager conn = ConnectivityManager.from(context);
         final TelephonyManager tele = TelephonyManager.from(context);
 
-        final List<SubscriptionInfo> subInfoList = SubscriptionManager.getActiveSubscriptionInfoList();
-        // No activated Subscription
+        final List<SubscriptionInfo> subInfoList =
+                SubscriptionManager.from(context).getActiveSubscriptionInfoList();
+        // No activated Subscriptions
         if (subInfoList == null) {
             return false;
         }
@@ -2586,7 +2589,7 @@
         };
 
         private void addMobileTab(Context context, List<SubscriptionInfo> subInfoList) {
-            if (subInfoList != null) {
+            if (subInfoList != null && mMobileTagMap != null) {
                 for (SubscriptionInfo subInfo : mSubInfoList) {
                     if (hasReadyMobileRadio(context, subInfo.getSubscriptionId())) {
                         mTabHost.addTab(buildTabSpec(mMobileTagMap.get(subInfo.getSubscriptionId()),
@@ -2634,10 +2637,12 @@
         }
 
         private int getSubId(String currentTab) {
-            Set<Integer> set = mMobileTagMap.keySet();
-            for (Integer subId : set) {
-                if (mMobileTagMap.get(subId).equals(currentTab)) {
-                    return subId;
+            if (mMobileTagMap != null) {
+                Set<Integer> set = mMobileTagMap.keySet();
+                for (Integer subId : set) {
+                    if (mMobileTagMap.get(subId).equals(currentTab)) {
+                        return subId;
+                    }
                 }
             }
             Log.e(TAG, "currentTab = " + currentTab + " non mobile tab called this function");