player.setDataSource(path); 为什么不能用
时间: 2023-10-24 16:34:45 浏览: 61
通过Media Player和Surface View播放视频.zip
`setDataSource()`方法用于设置媒体源。如果该方法不能用,请检查以下几个方面:
1. 权限问题:如果您的应用需要读取外部存储器中的文件,您需要在`AndroidManifest.xml`文件中添加读取外部存储器的权限声明:
```xml
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
```
2. 文件路径问题:请确保您传递给`setDataSource()`方法的文件路径是正确的。如果您使用的是绝对路径,比如`/sdcard/music.mp3`,请确保文件实际存在并且您的应用程序有权访问该文件。如果您使用的是相对路径,比如`music.mp3`,则相对路径是相对于您的应用程序的工作目录,因此请确保文件实际存在并且位于正确的位置。
3. 文件格式问题:请确保您传递给`setDataSource()`方法的文件是支持的媒体格式。Android支持多种媒体格式,包括MP3、WAV、MIDI、AAC等。如果您传递了不支持的媒体格式,将会抛出`IllegalArgumentException`异常。
如果您仍然无法使用`setDataSource()`方法,请提供更多的错误信息,以便我能够更好地帮助您解决问题。
阅读全文