【问题标题】:Audio playback using Android's own player使用安卓自带的播放器播放音频
【发布时间】:2020-07-23 11:37:18
【问题描述】:

我想知道如何在按下按钮时激活android自己的播放器,我试过但是当我按下按钮时应用程序被破坏。

这是我的 mp3 文件的位置(内部存储/下载/Audio.mp3)

我也在清单中添加了这个:

<android:name="android.permission.READ_EXTERNAL_STORAGE"/>

我的代码

button1.setOnClickListener {
           button1.setOnClickListener {

        val audioDirPath = File(getFilesDir(), "Download")
        audioDirPath.mkdir()
        val file = File(audioDirPath, "audionline.mp3")
        val contentUri = getUriForFile(this, "com.example.fileprovider", file)
        val intent = Intent(Intent.ACTION_VIEW)
        intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
        startActivity(intent)

    }
        }

【问题讨论】:

  • 将崩溃中的堆栈跟踪添加到您的问题中。
  • Almacenamientointerno:// 似乎不是一个有效的Uri 方案。 Audio/mp3 绝对不是有效的 MIME 类型(使用 audio/mp3,全部小写)。 “这是我的 mp3 文件的位置”——你的散文有 Audio.mp3,你的代码有 audio.mp3。 Android 文件系统区分大小写。 Add FileProvider 到您的项目,将其配置为在外部存储中提供来自Download/ 的文件,并使用getUriForFile() 获取Uri 以与this answer 一起使用。
  • 朋友你好,我已经推荐了你,但是我的contentUri有点问题,它说'contentUri'这个变量从来没有被使用过。

标签: java android android-studio kotlin


【解决方案1】:
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
context.startActivity(intent)

【讨论】:

  • 请不要只发布代码作为答案,还要解释您的代码的作用以及它如何解决问题的问题。带有解释的答案通常更有帮助、质量更好,并且更有可能吸引投票。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-06-18
  • 2012-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多