1

我使用下面的代码设置铃声 但对于 android 11 有错误

ContentValues contentValues = new ContentValues();
        contentValues.put(MediaStore.MediaColumns.DATA, outputfile.getAbsolutePath());
        contentValues.put(MediaStore.MediaColumns.TITLE, "ringtonename");
        contentValues.put(MediaStore.MediaColumns.MIME_TYPE, getMIMEType(ringtone_file.getPath()));
        contentValues.put(MediaStore.MediaColumns.SIZE, outputfile.length());
        contentValues.put(MediaStore.Audio.Media.ARTIST, "ringtonename");
        contentValues.put(MediaStore.Audio.Media.IS_RINGTONE, true);
        contentValues.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);
        contentValues.put(MediaStore.Audio.Media.IS_ALARM, true);
        contentValues.put(MediaStore.Audio.Media.IS_MUSIC, false);
        ContentResolver contentResolver = getContentResolver();
        Uri generalaudiouri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
        contentResolver.delete(generalaudiouri, MediaStore.MediaColumns.DATA + "='" + outputfile.getAbsolutePath() + "'", null);
        Uri ringtoneuri = contentResolver.insert(generalaudiouri, contentValues);
        RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE, ringtoneuri);
2021-10-11 14:53:03.037 10319-10319/com.bestappsringtones.ringtonesforandroidfree I/Toast:

显示:focusDisplayId = 0,isFocusInDesktop = false mCustomDisplayId=-1 isDexDualMode=false 2021-10-11 14:53:03.037 10319-10319/com.bestappsringtones.ringtonesforandroidfree I/Toast:显示:isActivityContext = true 2021-10-11 14 :53:03.106 10319-10319/com.bestappsringtones.ringtonesforandroidfree W/RingtoneManager:直接打开失败;尝试故障转移:java.io.FileNotFoundException:打开失败:ENOENT(没有这样的文件或目录)2021-10-11 14:53:03.114 10319-10319/com.bestappsringtones.ringtonesforandroidfree W/RingtoneManager:缓存铃声失败:java。 io.IOException:java.lang.SecurityException:Uri 不是铃声、警报或通知:content://0@media/external/audio/media/56062 2021-10-11 14:53:03.114 10319-10319/com .bestappsringtones.ringtonesforandroidfree I/RingtoneManager:保存路径类型:1,URI:内容:

4

0 回答 0