`
mypyg
  • 浏览: 549453 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

文件夹权限引起的MediaPlayer播放不正常

 
阅读更多
写了一个Ap,在程序运行时会解压一些声音文件到/data/data/app_dir目录。
在调用Mediaplayer来播放这些文件时,总是提示失败,在网上搜到有提到权限的问题,把目录改成所有人可读写即可播放,验证后ok。

分析原因是MediaPlayer是个服务,是在另一个进程也是另一个用户的,默认创建的声音文件对其是不可读的,导致无法读取数据,在MediaPlayer.prepare()时总是失败。

但是每次修改目录的权限是不现实的,所以可以先把文件打开,然后把文件句柄传给MediaPlayer,这是MediaPlayer就可以通过此句柄获取到数据。

MediaPlayer.setDataSource((new FileInputStream(new File(soundFilePath))).getFD());
1
4
分享到:
评论

相关推荐

    Android 使用mediaplayer播放res/raw文件夹中的音乐的实例

    Android 使用mediaplayer播放res/raw文件夹中的音乐的实例 (1)在res文件夹中新建一个文件夹重命名为raw,并且将要播放的音乐放到raw文件夹里面 (2)修改layout目录下的xml布局文件,添加3个按钮空间和一个文本...

    Android 使用MediaPlayer播放视频

    在博客"Android使用MediaPlayer播放视频"中,作者更详细地介绍了如何实现视频播放,包括网络视频播放、处理播放状态变化、控制播放进度等功能。通过阅读该博客,你可以获得更全面的了解和实践指导。 总之,`...

    android MediaPlayer播放视频网络URL,asset目录下文件,本地视频文件

    - `MediaPlayer`状态管理:了解其状态机(初始化、准备中、已准备、播放中、暂停、结束等)非常重要,以避免状态不匹配导致的问题。 - 错误处理:务必捕获异常并妥善处理,避免应用崩溃。 - 视频渲染:若需要在界面...

    Android实例之MediaPlayer播放音乐和视频

    在Android开发中,MediaPlayer是一个非常重要的组件,它用于播放音频和视频文件。在这个"Android实例之MediaPlayer播放音乐和视频"中,我们将深入探讨如何利用MediaPlayer类实现多媒体的播放功能。 首先,...

    Android应用开发mediaplayer播放音频,带有进度条

    MediaPlayer的使用过程中可能会遇到各种异常,如文件不存在、权限问题等,因此应适当地添加try-catch块进行错误处理。 9. **UI设计**: 在布局文件中,添加一个Button用于播放/暂停,一个SeekBar展示和调整播放...

    Android下MediaPlayer播放MP3示例

    在Android平台上,`MediaPlayer`是系统提供的一个核心组件,用于播放音频和视频文件。这个组件支持多种媒体格式,包括MP3。在这个示例中,我们将深入探讨如何使用`MediaPlayer`来播放MP3文件。 首先,我们需要了解`...

    使用MediaPlayer播放音频文件

    在Android开发中,`MediaPlayer` 是一个非常重要的组件,它用于播放各种音频和视频文件。本文将深入探讨`MediaPlayer`的使用,特别是如何利用它来播放音频文件。 首先,我们来了解一下`MediaPlayer`的基本概念。`...

    使用MediaPlayer和SurfaceView播放视频

    介绍了使用MediaPlayer播放音频,实际上,MediaPlayer还可以用来播放视频文件,只不过使用MediaPlayer播放视频时,没有提供图像输出界面。这时,可以使用SurfaceView组件来显示视频图像。使用MediaPlayer和...

    Android 使用MediaPlayer播放assets或者raw目录的音频文件

    Android 使用MediaPlayer播放assets或者raw目录的音频文件 https://blog.csdn.net/qq_31939617/article/details/80491552

    Android 中级教程之------Android MediaPlayer播放mp3的实例

    在Android开发中,MediaPlayer是一个非常重要的组件,它用于播放各种媒体资源,如音频和视频文件。本教程将深入探讨如何使用Android的MediaPlayer类来播放MP3格式的音频文件。了解这个知识点对于Android开发者来说至...

    GLSurfaceView控件通过MediaPlayer播放视频

    GLSurfaceView控件实现 GLSurfaceView.Renderer , SurfaceTexture.OnFrameAvailableListener接口,通过MediaPlayer播放本地视频

    MediaPlayer播放MP3文件

    此类是用MediaPlayer播放MP3音频文件的。封装好的代码,大家可以借鉴使用。简单入门,欢迎大家免费下载。

    Mediaplayer做音乐播放

    在本文中,我们将深入探讨如何使用`MediaPlayer`类在Windows Forms应用程序中实现音乐播放功能,以及如何通过窗体源码实现声音大小调节、播放进度控制和暂停等常见操作。`MediaPlayer`是.NET Framework中用于多媒体...

    一个用MediaPlayer播放网络视频案例

    `MediaPlayer` 类是Android SDK提供的一种用于播放多媒体文件的工具,它可以处理各种媒体格式,包括但不限于MP3、AAC、MP4等。它不仅支持本地文件播放,还能处理网络流媒体。在网络视频播放方面,`MediaPlayer` 提供...

    采用MediaPlayer播放网络音频和本地音频(子线程里快速启动/切换播放音频)

    在Android开发中,MediaPlayer是一个非常重要的组件,用于播放各种音频和视频资源,包括网络音频和本地音频。在处理多音频快速切换的场景时,我们可能会遇到一些挑战,比如播放异常、延迟等问题。以下是对`...

    Android MediaPlayer播放mp3的实例.doc

    在本示例中,我们将使用 MediaPlayer 来播放 res/raw 文件夹中的一首英文歌曲 "love fool.mp3"。程序中有三个 ImageButton 按钮,分别是播放、停止和暂停三个按钮的功能不需要多说。下面我们将 Step By Step 介绍...

    Android MediaPlayer 自定义循环次数

    在Android开发中,MediaPlayer是处理音频和视频播放的核心类之一,它提供了丰富的API来控制多媒体文件的播放。本文将深入探讨如何使用MediaPlayer自定义循环播放的次数,这在需要重复播放特定音频片段的应用场景中...

    mediaplayer demo 播放暂停同一按钮

    7. **错误处理**: 在处理MediaPlayer时,可能出现各种异常,如文件不存在、格式不支持等。因此,良好的错误处理机制是必要的,包括捕获异常、显示错误信息和适当地恢复或关闭MediaPlayer。 8. **生命周期管理**: ...

    android自定义MediaPlayer视频播放器,兼容各种视频类型播放。解决视频加载不出来黑屏问题。

    自定义MediaPlayer视频播放器,兼容各种视频类型播放。解决视频加载不出来黑屏问题。

    安卓MediaPlayer 播放MP3文件

    在Android平台上,`MediaPlayer`类是系统提供的一个核心组件,用于播放各种音频和视频文件,包括MP3格式。本文将详细讲解如何使用`MediaPlayer`来播放SDCard中的MP3文件。 首先,理解`MediaPlayer`的基本用法至关...

Global site tag (gtag.js) - Google Analytics