iOS - MPMediaPickerController 不适用于视频
Posted
技术标签:
【中文标题】iOS - MPMediaPickerController 不适用于视频【英文标题】:iOS - MPMediaPickerController doesn't work with videos 【发布时间】:2013-08-02 22:09:10 【问题描述】:我最近发现this 关于MPMediaPickerController
无法识别视频的问题,这正是我想要做的:让用户从他们的 iPod/视频库中选择视频。 (不是用户拍摄的视频,我指的是 iTunes 电视节目等)。该链接似乎确认这是一个已知问题,但接受的答案实际上并未提供解决方案。
我使用John Goodstadt's answer 中提供的代码来确认我在设备上拥有视频,但是当MPMediaPickerController
应该自动生成时,我不想为“视频选择器”生成自己的 UI ,使用 Apple 提供的Media Item Type Flags
:
// audio media types
MPMediaTypeMusic = 1 << 0,
MPMediaTypePodcast = 1 << 1,
MPMediaTypeAudioBook = 1 << 2,
MPMediaTypeAudioITunesU = 1 << 3, // available in ios 5.0
MPMediaTypeAnyAudio = 0x00ff,
// video media types
MPMediaTypeMovie = 1 << 8,
MPMediaTypeTVShow = 1 << 9,
MPMediaTypeVideoPodcast = 1 << 10,
MPMediaTypeMusicVideo = 1 << 11,
MPMediaTypeVideoITunesU = 1 << 12,
MPMediaTypeAnyVideo = 0xff00,
// generic media type
MPMediaTypeAny = ~0
事情是,每当我尝试这样做时:
MPMediaPickerController *mediaPicker = [[MPMediaPickerController alloc] initWithMediaTypes: MPMediaTypeAny];
(有效)然后我将MPMediaTypeAny
更改为MPMediaTypeAnyVideo
,我得到:
Warning: Unsupported media types (65280), using MPMediaTypeAny.
我错过了什么吗?是否有一些快速简便的解决方案,或者我真的必须从头开始创建自己的 VideoPicker?如果是这样的话,谁能满足我的好奇心并解释为什么MPMediaPickerController
似乎不再喜欢视频了?
【问题讨论】:
发生了什么:initWithMediaTypes:MPMediaTypeMovie | MPMediaTypeTVShow | ...
?
使用不同代码的相同错误:Unsupported media types (256)
用于电影,Unsupported media types (512)
用于电视节目等
【参考方案1】:
根据对this question 的回复,您可能在使用 MPMediaPickerController 方面不走运。您可能会考虑自己滚动,最有可能访问media library directly。如果你这样做了,一定要在 Github 上发布你的代码! :)
如果您有任何其他问题,请告诉我。
【讨论】:
对该问题的公认答案说不,但这是从 2010 年开始的,而 2012 年的答案听起来像是可能的。我希望第二个答案是最新的,但是,是的,我可能只需要吸收它并重新发明***。谢谢! 嗯,我刚刚看了那个代码。 “正确”的答案只是使用常规的媒体查询;我认为这并不意味着 Apple 已向 MPMediaPickerController 添加了对视频浏览的支持。如果您发现其他情况,请务必告诉我。以上是关于iOS - MPMediaPickerController 不适用于视频的主要内容,如果未能解决你的问题,请参考以下文章