代码之家  ›  专栏  ›  技术社区  ›  Kapparino

android-如何获取存储在原始文件夹中的mp3路径

  •  1
  • Kapparino  · 技术社区  · 9 年前

    在寻找解决方案后,我发现 link 可以检索以下路径:

    使用资源Id

    语法: android.resource://[package]/[resource_id]

    例子: Uri.parse("android.resource://com.my.package/" + R.raw.mp3filename);

    这正是我想要的。问题是,我正在使用lolipop,但它不起作用。解析包/资源时,从Uri获取路径。parse将为空。还有其他方法来写这个吗,因为在我的Song类中,我只能访问resourceId(R.raw.mp3filename)。

    1 回复  |  直到 8 年前
        1
  •  3
  •   CommonsWare    9 年前

    是否可以使用R.raw.mp3file获取文件路径

    否,因为它不是设备上的文件。它是开发机器硬盘上的一个文件。在设备上,它只是APK文件中的一个条目。

    要么:

    • 做任何你想做的事情,以其他不涉及文件路径的方式,或者

    • 使用 openInputStream() 在上 Resources 对象(您可以从任何 Context 通过 getResources() ),并使用Java I/O将该资源的内容复制到本地文件,例如 internal storage

    推荐文章