2011-10-03 16 views
5

tengo esto en mi preferences.xmlPreferencia valor por defecto tono de

 <RingtonePreference android:key="ringtone_uri" 
      android:title="@string/preferences_select_ringtone" 
      android:showDefault="true" android:srinlent="true" 
      android:summary="@string/preferences_select_ringtone_summary" /> 

Y cada vez que la primera vez que empezar de nuevo la instalación de una aplicación, el valor predeterminado en silencio :(, Al tocar en el tono de preferencia el cuadro de diálogo se abre con silenciosa seleccionado como predeterminado. Quiero por defecto "tono por defecto" para ser seleccionados. ¿Cómo puedo hacer esto enter image description here

¿Cómo puedo establecer el valor predeterminado para ser "tono por defecto" no silencio, no sé por qué es esto silencioso ya que mi predeterminado no lo configuro en ningún lugar en mi código, el silencio es el predeterminado del sistema android ...

Respuesta

5

Estaba buscando cómo establecer el valor predeterminado para el tono de llamada, y me di cuenta de que cuando la preferencia no está configurada, el valor está vacío y el silencio se selecciona como predeterminado. Pero lo hago

defaultstr = Uri.parse(PreferenceManager.getDefaultSharedPreferences(context).getString("r_uri", 
    android.provider.Settings.System.DEFAULT_RINGTONE_URI.toString())); 
//than I do this, I save the default ringtone to my setting 
if (defaultstr.equals(android.provider.Settings.System.DEFAULT_RINGTONE_URI)) { 
    PreferenceManager.getDefaultSharedPreferences(context).edit().putString("r_uri", 
     android.provider.Settings.System.DEFAULT_RINGTONE_URI.toString()).commit(); 
} 

Espero que esto ayude a alguien más. por cierto me asusto a cabo la búsqueda de esta solución, y yo estaba almidonar la cabeza durante horas

1

Sólo desactivar la opción "Silencio":

<RingtonePreference android:key="ringtone_uri" 
      android:title="@string/preferences_select_ringtone" 
      android:showDefault="true" android:srinlent="true" 
      android:summary="@string/preferences_select_ringtone_summary" 
      android:showSilent="false"> 
+0

Esto puede funcionar, pero solo si no desea ofrecer a sus usuarios la opción de seleccionar un tono de llamada silencioso. – nstCactus

6

La forma más sencilla de configurar el valor predeterminado por defecto tono de

<RingtonePreference 
     android:showDefault="true" 
     android:showSilent="true" 
     android:defaultValue="content://settings/system/notification_sound" 
        ....... 
     > 
</RingtonePreference> 
Cuestiones relacionadas