android 视频播放器选择界面弹出机制
1,file manager与videos识别视频的机制不同
a) file manager简单根据后缀识别,3gp、mp4和avi分别被认为是三种不同的视频格式,因此会分别弹出视频播放器选择界面
b) videos中视频识别是按照文件mimetype来设定,3gp属于简化的mp4,可以认为是同一类文件。在android设计里3gp和mp4文件使用同一个parser,两种文件的mimetype 也一致,都是video/mp4。由于android default将3gp和mp4使用同一个mimetype,当用户在播放3gp是选择了always,再播放mp4就不会弹出视频播放器选择界面。
2,在早期版本鄙司曾经支持3gp和mp4的区分,3gp有自定义的mimetype,但这个改动会导致一些第三方的应用没办法识别和使用3gp文件,例如国外比较流行的instagram会没办法分享camera录制的3gp文件。最后基于适用性的考虑对3gp的做法回归了android default的做法
3,建议是维持Android default的设计。参考机也是一样的行为。无论怎样修改行为,都会有side effect。
a) Solution1:修改Videos app的行为,改为不检查mimetype,而检查后缀。因为后缀不可靠,比如.3gp不一定是真正的.3gp,所以实际上也有问题的。
b) Solution2: 修改底层扫描的行为。如前面note提到行为会有Android default不一样,会造成其他app有问题。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。