¿Cómo lanzar un fragmento de Android SubSettings?

Por ejemplo, ¿cómo puedo iniciar la configuración de usuario? No se implementa como su propia actividad, así que no estoy seguro de cómo iniciarlo.

A continuación se presentan algunas otras preguntas similares, pero éstas son más generales o más específicos. Mi pregunta es acerca de iniciar un fragmento SubSettings arbitrario.

¿Cómo llamo a un PreferenceFragment específico de una PreferenceActivity?

Mostrar sólo la configuración del sistema inalámbrico en Android 3

Puede iniciar la mayoría de las sub-pantallas de Configuración de Android iniciando la Actividad de SubSettings e incluyendo : android: show_fragment extra con el nombre de clase totalmente calificado apropiado de una subclase de PreferenceFragment de Android existente.

Por ejemplo, para iniciar UserSettings:

adb shell am start -n com.android.settings/com.android.settings.SubSettings -e :android:show_fragment com.android.settings.users.UserSettings 

Para iniciar DeviceInfoSettings:

 adb shell am start -n com.android.settings/com.android.settings.SubSettings -e :android:show_fragment com.android.settings.DeviceInfoSettings 

Estos ejemplos utilizan 'adb shell am start', pero en principio se podría invocarlos en código Java (EDIT: Desafortunadamente, necesitas estar firmado con la clave del sistema, de lo contrario obtendrás una SecurityException). Tenga en cuenta que la clave para este extra tiene dos puntos en la parte delantera de la misma. Para encontrar otras configuraciones, elimina la fuente de Android y busca subclases de PreferenceFragment en los paquetes / aplicaciones / configuración.

La situación era diferente en Froyo y antes. En esos días las actividades se utilizaron para implementar sub-pantallas de configuración, por lo que uno podría iniciar directamente en una sub-pantalla (por ejemplo, SoundAndDisplaySettings) por el método habitual de llamar a startActivity () con un ComponentName o cadena de acción. Este mecanismo todavía funciona para algunas sub-pantallas Configuración. Por ejemplo, para abrir un selector de wifi, puede utilizar

 adb shell am start -a android.net.wifi.PICK_WIFI_NETWORK 

Para MM:

 am start -n com.android.settings/com.android.settings.SubSettings -e :settings:show_fragment com.android.settings.applications.RunningServices 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.