【问题标题】:set custom ring tone in Android Api 29在 Android Api 29 中设置自定义铃声
【发布时间】:2021-03-31 03:18:55
【问题描述】:

我有一个 kotlin 函数,可以将录制的音频设置为我的铃声。 它将声音文件复制到铃声库,我可以播放它。 问题是 1 - 它将标题设置为 1617159412418 而不是我在内容值中指定的字符串标题 2 - 它没有选择该铃声作为默认铃声

我使用 Android API 29 手机(三星 M02s) 请让我知道可能是什么问题 ————代码————

fun setTone() {
    //recorded sound file
    val inputfile = getAudioFile() + ".wav"

    val f = File(inputfile)


    val value = ContentValues()
    value.put(MediaColumns.TITLE, f.name)
    value.put(MediaColumns.SIZE, f.length())
    value.put(MediaColumns.MIME_TYPE, "audio/*")
    value.put(MediaStore.Audio.Media.ARTIST, "jothiring")
    value.put(MediaStore.Audio.Media.DURATION, 500)
    value.put(MediaStore.Audio.Media.IS_ALARM, false)
    value.put(MediaStore.Audio.Media.IS_MUSIC, false)
    value.put(MediaStore.Audio.Media.IS_NOTIFICATION, false)
    value.put(MediaStore.Audio.Media.IS_RINGTONE, true)
    val cr: ContentResolver = contentResolver

    val newUri: Uri? = cr.insert(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, value)

    if (newUri != null) {
        val inputstream = FileInputStream(inputfile)
        val outputstream = cr.openOutputStream(newUri)
        val buffer = ByteArray(1024)
        var read: Int = inputstream.read(buffer)

        while(read != -1) {
            outputstream?.write(buffer, 0, read)
            read = inputstream.read(buffer)
        }
        inputstream.close()
        outputstream?.close()

            //set default ringtone
        RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE, newUri!!)


    }

} //end setTone

【问题讨论】:

    标签: android title android-10.0 ringtone


    【解决方案1】:

    在 contentvalues 中填写 MediaStore.Audio.Media.DISPLAY_NAME 值,然后插入

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-09
      • 1970-01-01
      • 2011-05-18
      • 2010-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多