我认为这是一个奇怪的问题,但我没有任何线索来解决它。我想从我的代码中设置铃声,但我无法设置它。我看到了这个问题.. 在 Android 中设置铃声和在 Android 中 设置 铃声
我使用这个代码。
ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());
values.put(MediaStore.MediaColumns.TITLE, "My Song title");
values.put(MediaStore.MediaColumns.SIZE, 215454);
values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3");
values.put(MediaStore.Audio.Media.ARTIST, "");
values.put(MediaStore.Audio.Media.DURATION, 230);
values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
values.put(MediaStore.Audio.Media.IS_NOTIFICATION, false);
values.put(MediaStore.Audio.Media.IS_ALARM, false);
values.put(MediaStore.Audio.Media.IS_MUSIC, false);
//Insert it into the database
Uri uri = MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath());
Uri newUri = activity.getContentResolver().insert(uri, values);
RingtoneManager.setActualDefaultRingtoneUri(myucontext ,RingtoneManager.TYPE_RINGTONE, newUri);
Settings.System.putString(activity.getContentResolver(), Settings.System.RINGTONE, newUri.toString());
但我收到了这个错误
W/BackupManagerService(52): dataChanged 但没有参与者 pkg='com.android.providers.settings' uid=10024
我找不到为什么我的代码会发生这种情况?我用日志..
// this is before i set the ringtone
D/testing ( 232): New uricontent://media/external/audio/media/46
i set this uri to RingtoneManager.setActualDefaultRingtoneUri
D/testing ( 232): Default uricontent://settings/system/ringtone
After seting the uri when i read the value again i found this setings :((
D/dalvikvm( 221): GC freed 3861 objects / 221176 bytes in 95ms
我允许该应用程序..
<uses-permission android:name="android.permission.WRITE_SETTINGS" ></uses-permission>
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" ></uses-permission>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" ></uses-permission>
请帮我克服这个错误:(( ..