1

RINGTONE_PICKERアクションアクティビティを呼び出したときにカーソルにデフォルトの着信音以外のものが含まれるように、着信音ファイル、またはフォルダパス全体をRingtoneManagerに追加できるようにしたいと思います。

単純な要求のように聞こえますが、RingtoneManagerのドキュメントには(私が盲目でない限り)明白な方法はなく、このあたりで私が見つけることができる露骨に類似した質問はありません。

エミュレーターの/system/ media / ringtones /フォルダーに着信音ファイル(.ogg)を直接追加しようとしましたが(物理的な電話をルート化する予定はありません)、エミュレーターのマネージャーはまだそれらをリストしていません。

助言がありますか?

4

1 に答える 1

4

少し掘り下げてみたところ、RINGTONE_PICKERを使用すると次のことがわかりました。

RingtoneManagerタイプをTYPE_RINGTONEに設定した場合

Intent intent = new Intent( RingtoneManager.ACTION_RINGTONE_PICKER);
intent.putExtra( RingtoneManager.EXTRA_RINGTONE_TYPE,RingtoneManager.TYPE_RINGTONE);
intent.putExtra( RingtoneManager.EXTRA_RINGTONE_TITLE, "Select Tone");
startActivityForResult( intent, 0);

次に、着信音ピッカーは、「ringtones」というタイトルのファイルシステムの任意のフォルダーにある実行可能なオーディオファイル(mp3、oggなど)を選択可能なカーソルに追加します。

RingtonManagerタイプがTYPE_NOTIFICATIONに設定されている場合

intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,RingtoneManager.TYPE_NOTIFICATION);

次に、「notifications」というタイトルの任意のフォルダにある実行可能なオーディオファイルを追加します

最後に、タイプをTYPE_ALLに設定すると、「ringtones」または「notifications」という名前のフォルダー内のすべてのオーディオファイルが表示されます。

これが他の誰かにいくらかの明確さを与えることを願っています!

于 2012-07-28T00:21:04.337 に答える