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>
|
</intent-filter>
|
||||||
</activity-alias>
|
</activity-alias>
|
||||||
|
|
||||||
<activity android:name="ApnSettings"
|
<activity android:name="Settings$ApnSettingsActivity"
|
||||||
android:label="@string/apn_settings"
|
android:label="@string/apn_settings"
|
||||||
android:configChanges="orientation|keyboardHidden|screenSize"
|
android:configChanges="orientation|keyboardHidden|screenSize"
|
||||||
android:launchMode="singleTask"
|
android:launchMode="singleTask"
|
||||||
@@ -270,8 +270,21 @@
|
|||||||
<category android:name="android.intent.category.DEFAULT" />
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
<category android:name="android.intent.category.VOICE_LAUNCH" />
|
<category android:name="android.intent.category.VOICE_LAUNCH" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
|
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
|
||||||
|
android:value="com.android.settings.ApnSettings" />
|
||||||
</activity>
|
</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"
|
<activity android:name="Settings$BluetoothSettingsActivity"
|
||||||
android:uiOptions="splitActionBarWhenNarrow"
|
android:uiOptions="splitActionBarWhenNarrow"
|
||||||
android:label="@string/bluetooth_settings_title"
|
android:label="@string/bluetooth_settings_title"
|
||||||
|
@@ -120,12 +120,18 @@ public class ApnSettings extends SettingsPreferenceFragment implements
|
|||||||
super.onCreate(icicle);
|
super.onCreate(icicle);
|
||||||
|
|
||||||
addPreferencesFromResource(R.xml.apn_settings);
|
addPreferencesFromResource(R.xml.apn_settings);
|
||||||
getListView().setItemsCanFocus(true);
|
|
||||||
|
|
||||||
mMobileStateFilter = new IntentFilter(
|
mMobileStateFilter = new IntentFilter(
|
||||||
TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED);
|
TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onActivityCreated(Bundle savedInstanceState) {
|
||||||
|
super.onActivityCreated(savedInstanceState);
|
||||||
|
|
||||||
|
getListView().setItemsCanFocus(true);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onResume() {
|
public void onResume() {
|
||||||
super.onResume();
|
super.onResume();
|
||||||
|
@@ -88,5 +88,6 @@ public class Settings extends SettingsActivity {
|
|||||||
public static class PrintJobSettingsActivity extends SettingsActivity { /* empty */ }
|
public static class PrintJobSettingsActivity extends SettingsActivity { /* empty */ }
|
||||||
|
|
||||||
public static class TopLevelSettings 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(),
|
PaymentSettings.class.getName(),
|
||||||
KeyboardLayoutPickerFragment.class.getName(),
|
KeyboardLayoutPickerFragment.class.getName(),
|
||||||
ChooseAccountFragment.class.getName(),
|
ChooseAccountFragment.class.getName(),
|
||||||
DashboardSummary.class.getName()
|
DashboardSummary.class.getName(),
|
||||||
|
ApnSettings.class.getName()
|
||||||
};
|
};
|
||||||
|
|
||||||
private SharedPreferences mDevelopmentPreferences;
|
private SharedPreferences mDevelopmentPreferences;
|
||||||
|
Reference in New Issue
Block a user