Try-catch for deletePreferredApnId()

Devices pre-dating lollipop have pref apn stored in shared pref
without sub id. That shared pref was removed in M, but devices
skipping M will run into this crash on trying to extract sub id
from the pref apn key.

Bug: 25587618
Change-Id: I5a7727acd390fe861a8bb71a0a6eab8246791c59
diff --git a/src/com/android/providers/telephony/TelephonyProvider.java b/src/com/android/providers/telephony/TelephonyProvider.java
index bf7dc74..bf77aec 100644
--- a/src/com/android/providers/telephony/TelephonyProvider.java
+++ b/src/com/android/providers/telephony/TelephonyProvider.java
@@ -1453,10 +1453,14 @@
         Map<String, ?> allPrefApnId = sp.getAll();
         for (String key : allPrefApnId.keySet()) {
             // extract subId from key by removing COLUMN_APN_ID
-            int subId = Integer.parseInt(key.replace(COLUMN_APN_ID, ""));
-            long apnId = getPreferredApnId(subId, false);
-            if (apnId != INVALID_APN_ID) {
-                setPreferredApn(apnId, subId);
+            try {
+                int subId = Integer.parseInt(key.replace(COLUMN_APN_ID, ""));
+                long apnId = getPreferredApnId(subId, false);
+                if (apnId != INVALID_APN_ID) {
+                    setPreferredApn(apnId, subId);
+                }
+            } catch (Exception e) {
+                loge("Skipping over key " + key + " due to exception " + e);
             }
         }
         SharedPreferences.Editor editor = sp.edit();