[英]Adding a mp3 from my res/raw of package into the Ringtone List of Android
如何在應用程序的res / raw中將mp3添加到Android鈴聲列表中。 我不想播放,但要將其添加到鈴聲列表中。 一直在閱讀一些話題,但仍然很困惑。
只需將所有鈴聲添加到某個文件夾(必須先創建文件夾)
InputStream in = getResources().openRawResource(R.raw.ringtone1);
FileOutputStream out = new FileOutputStream("/mnt/sdcard/media/ringtones/ringtone1.mp3");
byte[] buff = new byte[1024];
int read = 0;
try {
while ((read = in.read(buff)) > 0) {
out.write(buff, 0, read);
}
} finally {
in.close();
out.close();
}
不要忘記添加權限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
如果您只想從“鈴聲選擇器”中選擇通知,則應將原始mp3文件復制到通知文件夾。 這是命名約定。 然后當您像這樣設置鈴聲選擇器時
Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,
RingtoneManager.TYPE_NOTIFICATION);
僅當文件位於名稱為notifications的文件夾中時,您才會看到文件。
更新:
忘了提一下,您應該在添加一些新的鈴聲/通知后掃描sdcard。 例如:
mContext.sendBroadcast (
new Intent(Intent.ACTION_MEDIA_MOUNTED,
Uri.parse("file://" + Environment.getExternalStorageDirectory()))
);
如果您不介意要復制的文件,則包含該文件的一種簡單方法是讓您的應用程序將文件拖放到SD卡上的以下位置:
[/ sdcard] /媒體/鈴聲
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.