我正在保存从我的应用程序发出的声音以用作铃声或通知声音。下面是我的代码,从this页面参加:Android:保存声音作为铃声和通知
ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());
values.put(MediaStore.MediaColumns.TITLE, soundName);
values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/ogg");
values.put(MediaStore.Audio.Media.ARTIST, "artist");
values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);
values.put(MediaStore.Audio.Media.IS_ALARM, true);
values.put(MediaStore.Audio.Media.IS_MUSIC, false);
Uri uri = MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath());
this.getContentResolver().insert(uri, values);
我的理解是,声音将被保存并作为铃声,通知声音和报警器,标志都设置为“真” 。至少在模拟器上这可以工作,但在实际的设备上,声音只出现在铃声列表中,我不知道为什么。
编辑:我试图进一步调查:删除与“IS_RINGTONE”行不会改变任何东西(如果一次只能使用一个标志),声音不会显示在列表中与通知声音。
任何帮助表示赞赏。
亲切的问候,Select0r
有谁知道这是否可能在FLASH CS5.5上? 我在那里开发了一个音板,我真的非常需要将铃声添加到紧急事项中。 – 2011-10-17 20:04:34