Android MediaPlayer setDataSource failed
今天在尝试使用MediaPlayer播放音乐时出了一个问题,在使用
mp.setDataSource(this,Uri.parse("/sdcard/Music/adele.mp3"));
这行代码为MediaPlayer设置要播放的音乐地址时,代码执行到这一行总是会报错,错误信息为:setDataSource failed
一下子就懵逼了,为何会failed没说啊,在网上查了些资料各种尝试后没什么用,后来改用其中的一个重载方法setDataSource(FileDescription fileDescription)终于给出了一个像样的错误信息: open failed: EACCES (Permission denied)
有了这个后就好解决了,于是用百毒搜了下,在这篇文章(传送门)里找到了答案:由于我是要播放sd卡中的音乐,所以需要写sd卡权限(为何播放音乐需要写权限?),需要在清单文件里面添加如下权限即可:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
切记切记~
Android MediaPlayer setDataSource failed的更多相关文章
- Android - Error: "java.io.IOException: setDataSource failed.: status=0x80000000"
Error: "java.io.IOException: setDataSource failed.: status=0x80000000" 本文地址: http://blog.c ...
- Android MediaPlayer架构 -- MediaPlayer的创建过程
本文系作者自己学习之所用,文章内容仅出自作者拙劣之思考,问题之处烦请不吝指教. MediaPlayer 能被用来控制音/视频文件或流媒体的回放.Android中以MediaPlayer类作为音视频播放 ...
- Android MediaPlayer播放一般音频与SoundPool播放短促的音效
[1]使用MediaPlayer实现一般的音频播放 MediaPlayer播放通常的音频文件 MediaPlayer mediaPlayer = new MediaPlayer(); if (medi ...
- 学习Android MediaPlayer
Android Media Playback 原文 The Android multimedia framework includes support for playing variety of c ...
- Android MediaPlayer和VideoView的使用
MediaPlayer MediaPlayer类是Androd多媒体框架中的一个重要组件,通过该类,我们可以以最小的步骤来获取,解码和播放音视频.它支持三种不同的媒体来源: 本地资源 内部 ...
- Android MediaPlayer接口及状态迁移
[时间:2016-09] [状态:Open] [关键词:android,mediaplayer,播放接口,播放状态图] 引言 本文内容相对简单,作为后续处理的起点,简要整理了Android Media ...
- Android MediaPlayer 常用方法介绍
Android MediaPlayer 常用方法介绍 方法:create(Context context, Uri uri) 解释:静态方法,通过Uri创建一个多媒体播放器. 方法:create(Co ...
- Android MediaPlayer 基础简介
本文链接: Android MediaPlayer 基础简介 简单介绍MediaPlayer的基本概念,状态,常用的方法与监听器. 什么是MediaPlayer MediaPlayer类可以用来播放音 ...
- Android MediaPlayer 播放音频
本文链接: Android MediaPlayer 播放音频 主要介绍使用MediaPlayer播放音频的方式.关于MediaPlayer的基础知识,比如状态,可以参考Android MediaPla ...
随机推荐
- QT5中无法包含Qtgui头文件的问题。
今天新学QT是,从一个ppt中边看边抄边学.前几页还能理解,但到了用纯源码写空白QT工程时,便遇到了一个问题.头文件里包含 #include <QtGui> 但是编译时总是出现下面图一中 ...
- linux 安装 ORACLE JDK 8
1.卸载默认的OPENJDK 查看 open jdk 的安装 rpm -qa | grep java 卸载 openjdk rpm -e --nodeps java-1.7.0-openjdk-1.7 ...
- javascript 经典问题汇总
1. ["1","2","3"].map(parseInt) 为多少?答:[1,NaN,NaN]array.map(function(cur ...
- org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/maven/cli/Ma ...
- Redis集群master选举时长测试
在一台物理机上启动6个Redis实例,组成3主3从集群,端口号依次为:1379 ~ 1384,端口号1379.1380和1384三个为master,端口1379的进程ID为17620.现将进程1762 ...
- 在aliyun遇到一些问题
1. 删除现有网站报错:“applicationhost.config 错误 无法写入配置文件” 解决办法:用管理员身份打开IIS. 2. IIS上部署MVC网站,打开后500错误:处理程序“Exte ...
- 分形在遥感和GIS中的应用
GIS等高线化简 遥感图像的追踪 分形matlab实现:分形应用于遥感图像处理 低分辨率和高分辨率图形它们的形状是相似的(图像增强) 贪吃蛇和蚁群算法:试想管中窥豹,一只小蚂蚁 ...
- 【转】require.js学习笔记(一)
一.立即执行函数 立即执行函数可以有效避免临时变量污染全局空间.可以在页面初始化时,在立即执行函数内实现一次执行变量的定义及使用. for (var i = 0; i < elems.lengt ...
- 万物云平台数据转发 c# 控制台程序
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...
- 在Windows 8.1中安装必应输入法
鉴于目前Windows 8.1中自带的输入法存在一些Bug以及功能上的不完整性(比如,在Office 2013中删除掉错误的字符后快速输入第一个字母将丢失的问题:在QQ聊天窗口中文输入状态下快速输入省 ...