Renamed "Regulatory information" to "Regulatory labels"
and added a new option called "Safety & regulatory information".
The new option only shows if an activity exists that can
accept android.settings.SHOW_SAFETY_AND_REGULATORY_INFO intents.
BUG:
27876015
Change-Id: Iaf9588658eb7919b330ac8b3d673b8e81a4f76dc
<!-- Show regulatory info (from settings item or dialing "*#07#") -->
<activity android:name="RegulatoryInfoDisplayActivity"
- android:label="@string/regulatory_information"
+ android:label="@string/regulatory_labels"
android:taskAffinity=""
android:enabled="@bool/config_show_regulatory_info">
<intent-filter>
<string name="contributors_title">Contributors</string>
<!-- About phone settings screen, setting option name to show Manual [CHAR LIMIT=25] -->
<string name="manual">Manual</string>
- <!-- About phone settings screen, setting option name to show regulatory information [CHAR LIMIT=25] -->
- <string name="regulatory_information">Regulatory information</string>
+ <!-- About phone settings screen, setting option name to show regulatory labels [CHAR LIMIT=25] -->
+ <string name="regulatory_labels">Regulatory labels</string>
+ <!-- About phone settings screen, setting option name to show safety and regulatory information [CHAR LIMIT=40] -->
+ <string name="safety_and_regulatory_info">Safety & regulatory information</string>
<!-- Note: this may be replaced by a more-specific title of the activity that will get launched --> <skip />
<!-- About phone settings screen, setting option name to see copyright-related info -->
<string name="copyright_title">Copyright</string>
<PreferenceScreen
android:key="regulatory_info"
- android:title="@string/regulatory_information">
+ android:title="@string/regulatory_labels">
<intent android:action="android.settings.SHOW_REGULATORY_INFO" />
</PreferenceScreen>
+ <PreferenceScreen
+ android:key="safety_info"
+ android:title="@string/safety_and_regulatory_info">
+ <intent android:action="android.settings.SHOW_SAFETY_AND_REGULATORY_INFO" />
+ </PreferenceScreen>
+
<!-- Feedback on the device -->
<PreferenceScreen android:key="device_feedback"
android:title="@string/device_feedback">
// Remove manual entry if none present.
removePreferenceIfBoolFalse(KEY_MANUAL, R.bool.config_show_manual);
- // Remove regulatory information if none present.
- final Intent intent = new Intent(Settings.ACTION_SHOW_REGULATORY_INFO);
- if (getPackageManager().queryIntentActivities(intent, 0).isEmpty()) {
- Preference pref = findPreference(KEY_REGULATORY_INFO);
- if (pref != null) {
- getPreferenceScreen().removePreference(pref);
- }
- }
+ // Remove regulatory labels if no activity present to handle intent.
+ removePreferenceIfActivityMissing(
+ KEY_REGULATORY_INFO, Settings.ACTION_SHOW_REGULATORY_INFO);
+
+ removePreferenceIfActivityMissing(
+ "safety_info", "android.settings.SHOW_SAFETY_AND_REGULATORY_INFO");
}
@Override
}
}
+ private void removePreferenceIfActivityMissing(String preferenceKey, String action) {
+ final Intent intent = new Intent(action);
+ if (getPackageManager().queryIntentActivities(intent, 0).isEmpty()) {
+ Preference pref = findPreference(preferenceKey);
+ if (pref != null) {
+ getPreferenceScreen().removePreference(pref);
+ }
+ }
+ }
+
private void removePreferenceIfBoolFalse(String preference, int resId) {
if (!getResources().getBoolean(resId)) {
Preference pref = findPreference(preference);
}
AlertDialog.Builder builder = new AlertDialog.Builder(this)
- .setTitle(R.string.regulatory_information)
+ .setTitle(R.string.regulatory_labels)
.setOnDismissListener(this);
boolean regulatoryInfoDrawableExists = false;