定义设备是否支持视频格式

时间:2012-08-17 19:27:15

标签: android

我需要定义设备是否可以播放视频文件。到目前为止,我已经注册了an error handler,它收到了许多可能容忍的错误 - 我的意思是即使它们发生了,玩家仍感觉很好并且继续工作。

但是,我需要以某种方式区分不重要的错误和与MediaPlayer无法播放某些视频格式相关的错误。或者还有另一种方法来定义是否可以播放视频?

也许有一项功能可以提取所有可支持类型的视频,并将它们与正在播放的视频类型进行比较?

感谢。

2 个答案:

答案 0 :(得分:0)

如果按类型表示扩展名,那么这可能会有所帮助: Android Supported Media Formats

编辑:您可以通过创建包含支持格式的任何集合来比较格式,然后检查文件的格式,并检查它是否包含在集合中。

以下是提取文件格式的方法示例:

private String getFileExtention(String fileName) {
      String ext="";
      int mid= fileName.lastIndexOf(".");
      ext=fileName.substring(mid+1,fileName.length());  
      return ext;
}

答案 1 :(得分:0)

有一个隐藏的api android.media.Mediafile.isMimeTypeMedia。您可以使用它的反射来获取是否支持您的mime类型。 函数签名是

 public static boolean isMimeTypeMedia(String mimeType) 

在包含android.media包的Mediafile类中。