【问题标题】:Rename URI file to share audio from raw folder重命名 URI 文件以共享原始文件夹中的音频
【发布时间】:2018-03-10 15:28:47
【问题描述】:

我正在尝试制作一个共享应用程序“原始”文件夹内的子项的应用程序,但我没有得到它。该文件是共享的,但没有 .mp3 扩展名。我无法听到 Windows Media Player,但我手动输入了 .mp3 扩展名。有人知道我如何自动获得 .mp3 扩展名吗?将 URI 转换/重命名为 mp3 文件。

歌曲名称是在文件中注册的,我相信如果可以重命名,最后添加.mp3可能会起作用。但我无法重命名。

我正在使用此代码:

意向分享;

Uri uri = Uri.parse("android.resource://"+this.getPackageName()+"/raw/name_musica"); 
share = new Intent(Intent.ACTION_SEND);
share.putExtra(Intent.EXTRA_STREAM, uri); share.setType("audio/*"); 
share.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 
startActivity(Intent.createChooser(share, "Enviar via: "));

【问题讨论】:

    标签: android uri share-intent


    【解决方案1】:

    EXTRA_STREAMdocumentation 声明它是:

    内容:URI 保存与 Intent 关联的数据流,与 ACTION_SEND 一起使用以提供正在发送的数据。

    android.resource: 不是content:。响应ACTION_SEND 的任何内容都不需要知道如何处理EXTRA_STREAM 中的android.resource: Uri

    将资源复制到本地文件系统并使用FileProvider,因此FileProvider 可以为您提供content: UriEXTRA_STREAM 一起使用。或者,编写您自己的 ContentProvider,直接从您的原始资源中提供内容,并为您的提供者使用 content: Uri

    另外,不要使用audio/*。使用您正在共享的内容的实际具体 MIME 类型。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-04
      • 1970-01-01
      相关资源
      最近更新 更多