In location settings, we want "Advanced" button show up right after "App level permissions". But with different numbers of "recent location requests" apps, the Preferences hidden under Advanced could change. To fix this issue, we fetch the list of apps with "recent location requests" in LocationSettings.onCreate(), and set initialExpandedChildrenCount for location PreferenceScreen to the apps count. Bug: 70350519 Test: Manual Change-Id: I4c4b6bdfa916213494a29e8ae8b5f33476411c88
60 lines
2.6 KiB
XML
60 lines
2.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- Copyright (C) 2011 The Android Open Source Project
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
|
xmlns:settings="http://schemas.android.com/apk/res-auto"
|
|
android:key="location_settings"
|
|
android:title="@string/location_settings_title"
|
|
settings:keywords="@string/keywords_location">
|
|
|
|
<PreferenceCategory
|
|
android:key="recent_location_requests"
|
|
android:title="@string/location_category_recent_location_requests"/>
|
|
|
|
<!-- This preference category gets removed if new_recent_location_ui is disabled -->
|
|
<Preference
|
|
android:key="app_level_permissions"
|
|
android:title="@string/location_app_level_permissions">
|
|
<intent android:action="android.intent.action.MANAGE_PERMISSION_APPS">
|
|
<extra android:name="android.intent.extra.PERMISSION_NAME"
|
|
android:value="android.permission-group.LOCATION" />
|
|
</intent>
|
|
</Preference>
|
|
|
|
<Preference
|
|
android:key="location_scanning"
|
|
android:title="@string/location_scanning_screen_title"
|
|
android:fragment="com.android.settings.location.ScanningSettings"/>
|
|
|
|
<!-- This preference category gets removed if there is no managed profile -->
|
|
<com.android.settingslib.RestrictedSwitchPreference
|
|
android:key="managed_profile_location_switch"
|
|
android:title="@string/managed_profile_location_switch_title"
|
|
settings:useAdminDisabledSummary="true"
|
|
android:enabled="false"
|
|
android:selectable="true" />
|
|
|
|
<PreferenceCategory
|
|
android:key="location_services"
|
|
android:title="@string/location_category_location_services" />
|
|
|
|
<Preference
|
|
android:key="location_mode"
|
|
android:title="@string/location_mode_title"
|
|
settings:keywords="@string/keywords_location_mode"
|
|
android:summary="@string/summary_placeholder" />
|
|
</PreferenceScreen>
|