2012-07-21 78 views
1

我希望能夠添加鈴聲文件,或者甚至可以添加到鈴聲管理器的整個文件夾路徑,以便在我調用RINGTONE_PICKER操作活動時光標將包含的不僅僅是默認鈴聲。如何將鈴聲添加到鈴聲管理器?

這聽起來像是一個簡單的請求,但RingtoneManager文檔中沒有明顯的方法(除非我是盲人),並且在這裏我可以找到沒有明顯類似的問題。

我已經嘗試直接在模擬器中添加鈴聲文件(.ogg)到/ system/media/ringtones /文件夾中(我不打算生根我的物理電話),並且模擬器中的管理器仍然會不列出他們。

有什麼建議嗎?

回答

3

於是四處尋找了一下後,我才知道,使用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); 

然後鈴聲選擇器將添加任何可行的音頻文件(MP3 ,ogg等),它們位於文件系統的ANY文件夾中,標題爲「鈴聲」,表示它是可選光標。

如果RingtonManager類型設置爲TYPE_NOTIFICATION

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

則反而會加重位於名爲任何文件夾中任何可行的音頻文件,「通知」

最後,如果你設置類型TYPE_ALL它會在名爲「鈴聲」或「通知」的文件夾中顯示所有音頻文件。

我希望這可以讓其他人都清楚一些!

+0

感謝您的出色澄清(Google的文檔始終處於癱瘓狀態) – 2015-12-17 13:52:09