2011-01-31 3 views
0

Je voudrais la possibilité de définir les sonneries de systèmes à partir de mon application Android. Je fais face à un problème un peu intéressant parce que je n'ai jamais fait référence aux sons directement dans mon code et que j'utilise une configuration qui se réfère à eux via ints, donc le code que j'ai trouvé en ligne ne s'applique pas à moi.Réglage des sonneries dans l'application Android

Je ne suis pas sûr si mon code pour définir la sonnerie est correcte ou non. Il remplace ma sonnerie, mais il ne la remplace jamais par le son que je lui demande. Quand j'utilisais "Uri.parse" et que je lui donnais le chemin pour trouver le fichier correct, il remplaçait la sonnerie par rien. Maintenant, en utilisant "Uri.fromFile", et en se référant au son via un fichier, il le remplace par un son de téléphone typique, que je suppose être une sorte de défaut.

Je ne reçois aucune erreur de ceci, mais j'obtiens un avertissement qui semble pertinent.

dataChanged but no participant pkg='com.android.providers.settings' uid=10096 

Il me semble que je ne fais pas référence au fichier correctement. Je peux obtenir le chemin du son dans une chaîne, et bien sûr les définir comme un fichier, mais il me manque quelque chose quelque part.

Toutes les idées sont appréciées, merci.

EDIT :: Eh bien, il semble que l'erreur n'apparaisse que lorsque vous "changez la sonnerie". Donc, si je devais redéfinir le son d'une sonnerie, il ne s'afficherait pas, mais si je devais définir un son différent, il le ferait. Pour moi, cela signifie toujours qu'il voit tout ce que je fais, mais je ne me réfère pas correctement au son, donc il ne sait pas quoi mettre là.

EDIT :: Ce sont les points principaux des erreurs que j'obtiens lorsque j'essaie d'utiliser la même configuration que celle affichée dans d'autres exemples de paramètres de sonneries.

Ce sont quand j'essayez d'abord de définir comme sonnerie:

02-01 11:51:20.709: ERROR/MediaPlayerService(1157): Couldn't open fd for content://settings/system/ringtone 

02-01 11:51:20.709: ERROR/MediaPlayer(13807): Unable to to create media player 

02-01 11:51:20.709: ERROR/RingtoneManager(13807): Failed to open ringtone content://settings/system/ringtone 

02-01 11:51:20.709: ERROR/MediaPlayer(13807): Unable to to create media player 

02-01 11:51:20.716: WARN/Ringtone(13807): Couldn't set the stream type 

02-01 11:51:20.716: WARN/Ringtone(13807): java.io.IOException: setDataSourceFD failed.: status=0x80000000 

Et cela est si je vais dans mes réglages de volume et de changer le volume de la sonnerie:

02-01 11:51:23.568: ERROR/MediaPlayer(13807): Unable to to create media player 

02-01 11:51:23.568: ERROR/Ringtone(13807): play() caught 

02-01 11:51:23.568: ERROR/Ringtone(13807): java.io.IOException: setDataSourceFD failed.: status=0x80000000 

Répondre

0

De votre question, je ne suis pas sûr de ce que vous utilisez pour changer les sonneries. Vous pouvez utiliser

android.media.RingtoneManager 

Plusieurs liens utiles:

How to set ringtone in Android from my activity?

setting audio file as Ringtone

+0

J'ai édité mon post principal avec les points de balle de mon journal d'erreur lorsque je tente d'utiliser le code de ces exemples. Certes, j'ai juste glissé le code et changé ce dont j'avais besoin, mais plus tôt j'ai pris un peu de temps pour essayer de le faire fonctionner avec ce code et cela m'a donné des résultats similaires, sinon identiques. Merci pour les liens de toute façon, je vais continuer à les étudier pour voir si je ne peux pas faire avancer les choses. – Raphy

+0

De votre journal, je peux voir que vous utilisez URI où le chemin du fichier devrait venir. Si vous ne parvenez pas à le résoudre, je peux vous aider demain. Cordialement. – Zelimir

+0

J'ai expérimenté pendant un certain temps en essayant différentes choses en fonction de ce que vous avez dit, mais cela ne réglerait toujours pas correctement la sonnerie. Je suis sûr que c'est quelque chose de très simple, mes problèmes majeurs sont presque toujours. Merci d'avoir pris le temps d'aider. – Raphy

Questions connexes