0

我正在创建一个应用程序,它允许用户从应用程序内部设置不同的铃声。他们设置了特定的铃声后,如何将其恢复为系统默认值?这是我正在使用的代码,但它不起作用。

                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)
4

0 回答 0