iphone - MPMoviePlayerController - Как написать код, который работает на старых версиях iOS также - PullRequest
0 голосов
/ 23 декабря 2010

Я использую MPMoviePlayerController в моем приложении.Когда я запустил приложение на устройстве iOS 4.2, оно работало нормально.Но при работе на устройстве iOS 3.1.3 происходит сбой, сообщающий, что длительность, controlStyle и т. Д. Недоступны в более старых iOS SDK.Я установил целевое устройство развертывания на 3.1.Его здание хорошо.Что мне нужно сделать, чтобы мое приложение воспроизводило видео как на последней, так и на старой iOS.

Ответы [ 3 ]

0 голосов
/ 23 декабря 2010

Если вы посмотрите в документации, вы увидите:

controlStyle
The style of the playback controls.

@property(nonatomic) MPMovieControlStyle controlStyle
…
Availability
Available in iOS 3.2 and later.

У меня была та же проблема, и я понял, что она не проверяет функции 3.0, если вы установите цель развертывания 3.0.

Что я сделал, чтобы проверить это, я установил для Project Base SDK 3.0 (который может оставаться все время на 3.0) и установил Base SDK моей цели на 3.0 (это должно быть установлено обратно на 4.0, потому что в противном случае я получаю некоторые странные предупреждения). Если вы установите целевой SDK 3.0, то XCode проверит, существуют ли все ваши функции в iOS SDK 3.0.

Если у вас нет возможности выбрать SDK 3.0 в Base SDK, вам необходимо загрузить старую версию XCode и установить SDK вручную. (открыть DVD goto / packages и установить SDK 3.0 для симулятора и устройства)

0 голосов
/ 04 января 2011

Вы можете проверить информацию здесь. http://iosdevelopertips.com/video/getting-mpmovieplayercontroller-to-cooperate-with-ios4-3-2-ipad-and-earlier-versions-of-iphone-sdk.html#comment-36453

Но если вы используете вложенный контроллер, то некоторые функции, такие как пейджинг, не будут работать из-за контроллера модального представления. Делегат должен быть назначен правильно, но я не знаю, как это назначить. Если кто-нибудь знает, пожалуйста, предоставьте некоторые инструкции.

0 голосов
/ 23 декабря 2010

Вы можете проверить текущую версию iOS с помощью [[UIDevice currentDevice] systemVersion], а в более старых версиях не использовать эти свойства, что вызывает ошибку.

...