如何解决如何通过字符串或 Android 中的文件名确定主要媒体类型?
我正在制作一个应用程序,它可以列出服务器中特定目录的所有文件。在服务器端,我使用 python-magic 来识别文件的 mime 类型,并将结果(像“video/mp4”这样的字符串)发送回客户端应用程序。所以当应用得到结果时,它可以根据文件类型显示相对缩略图。
我想将所有文件归类为以下类型: 1、图像; 2、视频;3、音频;4、(其他)文件
我在客户端使用这样的逻辑:
if(file.getType().contains("image")){
//example "image/bmp"
viewholder.file_icon.setimageResource(R.drawable.image);
}else if(file.getType().contains("video")){
//example "video/mp4"
viewholder.file_icon.setimageResource(R.drawable.video);
}else if(file.getType().contains("audio")){
//example "audio/mpeg"
viewholder.file_icon.setimageResource(R.drawable.music);
}else{
viewholder.file_icon.setimageResource(R.drawable.others);
}
但是后来发现在服务器端,RMVB格式解析为“application/vnd.rn-realmedia”,MP3格式解析为“application/octet-stream”,所以这些类型只能是在我的客户端被视为“其他类型”,除非我为 if 语句编写额外的逻辑,而且我确信那不是解决方案。
RMVB格式显然是一种“视频”,而MP3应该是一种“音频”。我们都知道这些,但我怎么能让 Android 也知道呢?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。