Fix bug #12910775 Settings crash after tap on Access Point Names under Mobile networks
- ApnSettings is now a fragment so introduce a new ApnSettingsActivity - ApsSettingsActivity will use the ApnSettings fragment - move the getListView() call to onActivityCreated(...) as the ListView needs to be created before this call can be done. - add also an alias for the old activity name ".ApsSettings" Change-Id: Id228722d7f34415d4b036282f0845e28546111df
This commit is contained in:
@@ -259,7 +259,7 @@
|
||||
</intent-filter>
|
||||
</activity-alias>
|
||||
|
||||
<activity android:name="ApnSettings"
|
||||
<activity android:name="Settings$ApnSettingsActivity"
|
||||
android:label="@string/apn_settings"
|
||||
android:configChanges="orientation|keyboardHidden|screenSize"
|
||||
android:launchMode="singleTask"
|
||||
@@ -270,8 +270,21 @@
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<category android:name="android.intent.category.VOICE_LAUNCH" />
|
||||
</intent-filter>
|
||||
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
|
||||
android:value="com.android.settings.ApnSettings" />
|
||||
</activity>
|
||||
|
||||
<!-- Keep compatibility with old shortcuts. -->
|
||||
<activity-alias android:name=".ApnSettings"
|
||||
android:label="@string/apn_settings"
|
||||
android:configChanges="orientation|keyboardHidden|screenSize"
|
||||
android:launchMode="singleTask"
|
||||
android:exported="true"
|
||||
android:targetActivity="Settings$ApnSettingsActivity">
|
||||
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
|
||||
android:value="com.android.settings.ApnSettings" />
|
||||
</activity-alias>
|
||||
|
||||
<activity android:name="Settings$BluetoothSettingsActivity"
|
||||
android:uiOptions="splitActionBarWhenNarrow"
|
||||
android:label="@string/bluetooth_settings_title"
|
||||
|
@@ -120,12 +120,18 @@ public class ApnSettings extends SettingsPreferenceFragment implements
|
||||
super.onCreate(icicle);
|
||||
|
||||
addPreferencesFromResource(R.xml.apn_settings);
|
||||
getListView().setItemsCanFocus(true);
|
||||
|
||||
mMobileStateFilter = new IntentFilter(
|
||||
TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityCreated(Bundle savedInstanceState) {
|
||||
super.onActivityCreated(savedInstanceState);
|
||||
|
||||
getListView().setItemsCanFocus(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
|
@@ -88,5 +88,6 @@ public class Settings extends SettingsActivity {
|
||||
public static class PrintJobSettingsActivity extends SettingsActivity { /* empty */ }
|
||||
|
||||
public static class TopLevelSettings extends SettingsActivity { /* empty */ }
|
||||
public static class ApnSettingsActivity extends SettingsActivity { /* empty */ }
|
||||
}
|
||||
|
||||
|
@@ -278,7 +278,8 @@ public class SettingsActivity extends Activity
|
||||
PaymentSettings.class.getName(),
|
||||
KeyboardLayoutPickerFragment.class.getName(),
|
||||
ChooseAccountFragment.class.getName(),
|
||||
DashboardSummary.class.getName()
|
||||
DashboardSummary.class.getName(),
|
||||
ApnSettings.class.getName()
|
||||
};
|
||||
|
||||
private SharedPreferences mDevelopmentPreferences;
|
||||
|
Reference in New Issue
Block a user