2012-03-15 2 views
0

Объект NSURL, возвращаемый pathForResource, является нулевым для пользовательских импортированных файлов фильмов.MPMoviePlayerController и объект NSURL

-(NSURL *)localMovieURL 
{ 
    NSURL *theMovieURL = nil; 
    NSBundle *bundle = [NSBundle mainBundle]; 
    if (bundle) 
    { 
      NSString *moviePath = [bundle pathForResource:@"Movie"  ofType:@"m4v"]; 
     //NSString *moviePath = [bundle pathForResource:@"Movie_01" ofType:@"m4v"]; 
     //NSString *moviePath = [bundle pathForResource:@"Sample"  ofType:@"m4v"]; 
    if (moviePath) 
    { 
     theMovieURL = [NSURL fileURLWithPath:moviePath]; 
     } 

    NSLog(@" MMM moviePath = %@", moviePath); 
    NSLog(@" UUU theMovieURL = %@", theMovieURL); 

} 

return theMovieURL; 

} 

Рассмотрим выше пример кода от компании Apple (Sample название проекта - MoviePlayer)

https://developer.apple.com/library/ios/navigation/index.html?section=Resource+Types&topic=Sample+Code

Movie.m4v поставляется с образцом и скомпилированного проекта образца играет m4v без проблем вообще , Но когда я делаю копию Movie.m4v, назовите ее Movie_01.m4v и перетащите файл в проект, MPMoviePlayerController не ответит. Также добавленный вывод NSLog (начинается с MMM и UUU становится «... = (null)». То же самое касается образца m4v «Sample.m4v», который я делаю с iMovie.

Этот вопрос связан с вопрос, который я опубликовал ранее (here). Мой предыдущий вопрос включает в себя проект, который я написал сам, и он имеет ту же проблему: метод «pathForResource» возвращает «nil», даже файлы фильмов, по-видимому, правильно импортированы. Xcode и я импортировали (перетаскивают) фотофайлы png в проект таким же образом. Но фотографии png могут отображаться скомпилированной программой как на телефоне, так и на симуляторе, как ожидалось.

Надеюсь, что кто-то может дать некоторые подсказки .

ответ

2

Кажется, вы продублировали свой вопрос. Кажется, что оба ответа: добавьте фильм в свой пакет приложений (Шаги сборки проекта)> Копировать ресурсы)

+0

Спасибо за ответ, но где я могу найти (Шаги сборки проекта> Копировать ресурсы)? – Stanley

+0

Выберите проект в навигаторе проекта, выберите цель, нажмите «Сформировать фазы», ​​«Скопируйте ресурсы пакета» и добавьте свой фильм. –

+0

Также о двух вопросах, первый был несколько часов назад и под другим заголовком. Второй - это обновление и задать другой вопрос. У старого есть ссылка на это на всякий случай, если люди не узнают, почему вопрос внезапно закрыт. – Stanley

Смежные вопросы