我正在创建一个应用程序,它允许用户从应用程序内部设置不同的铃声。他们设置了特定的铃声后,如何将其恢复为系统默认值?这是我正在使用的代码,但它不起作用。
getApplicationContext(),
RingtoneManager.TYPE_RINGTONE, Settings.System.DEFAULT_RINGTONE_URI)
我也使用了下面的代码
RingtoneManager.setActualDefaultRingtoneUri(
getApplicationContext(),
RingtoneManager.TYPE_RINGTONE, getActualDefaultRingtoneUri(this, TYPE_RINGTONE))
但它会引发错误
java.lang.IllegalArgumentException: Invalid column: _data
at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:165)
at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:135)
at android.content.ContentProviderProxy.call(ContentProviderNative.java:646)
at android.provider.Settings$NameValueCache.putStringForUser(Settings.java:1570)
at android.provider.Settings$System.putStringForUser(Settings.java:1942)
at android.media.RingtoneManager.setActualDefaultRingtoneUri(RingtoneManager.java:745)
at com.quantumt.sampleringtone.MainActivity.revertRingtone(MainActivity.kt:139)
at com.quantumt.sampleringtone.MainActivity.access$revertRingtone(MainActivity.kt:30)
at com.quantumt.sampleringtone.MainActivity$onCreate$1.onClick(MainActivity.kt:42)