如何检测资源是什么类型的文件?在我的情况下,可能会有视频和图像。
所以,如果是视频,我会使用VideoView
;在图像的情况下,我使用ImageView
?
我正在获得这样的资源ID:
AssetFileDescriptor afd = context.getResources().openRawResourceFd(resourceID);
答案 0 :(得分:1)
我唯一想到的是你可以使用这样的常量检查文件名:
final String type = getApplicationContext().getResources().getResourceTypeName(resID);
if(type.equals("drawable")){
// handle it like an image
}else if(.....) //do some research for other constants
答案 1 :(得分:1)
我认为没有读取/分析文件的二进制数据(如TrID)是不可能的。最简单的方法是使用预定义的字符串为文件名添加前缀。例如:
video_file_00
,video_file_01
... image_file_00
,image_file_01
... 然后您可以使用getResourceName(int)
来解析文件名。