【问题标题】:How do I construct a local movie URL properly?如何正确构建本地电影 URL?
【发布时间】:2011-03-21 00:13:56
【问题描述】:

在我的 iPhone 应用程序中,用户可以单击表格单元格,然后电影将开始播放。这部电影是我项目中“/Resources/myMovie.m4v”下的本地文件。我不知道如何正确链接到它。

我找到了这段代码,但它似乎不起作用:

NSString *rootPath = [[NSBundle mainBundle] resourcePath];
NSString *filePath = [rootPath stringByAppendingPathComponent:@"myMovie.m4v"];
NSURL *fileURL = [NSURL fileURLWithPath:filePath isDirectory:NO];

moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL: [NSURL fileURLWithPath:filePath isDirectory:NO]];

感谢您的帮助!

【问题讨论】:

    标签: iphone objective-c ios ios4 mpmovieplayercontroller


    【解决方案1】:

    文件肯定在主包中吗?

    尝试使用它来获取 URL。

    NSURL *url = [[NSBundle mainBundle] URLForResource:@"myMovie" withExtension:@"m4v"];
       moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
    

    【讨论】:

    • 我不确定主捆绑包是什么。它位于资源组的项目面板中。
    • MCannon 的帖子应该可以满足您的需求。在 iOS 4 之前,您将使用 -pathForResource:ofType:,传递相同的参数,并将生成的路径传递给 [NSURL fileURLWithPath:]。主要捆绑包是您正在构建的 .app。在 iOS 上,这是您唯一可以创建的类型。如果上述方法不起作用,那么我建议确保您的电影肯定在当前目标中 - 如果不是,则在构建时不会将其复制到应用程序中。
    • 主包基本上是应用包,任何从应用商店与您的应用一起下载的内容都在主包中。
    • MCannon 的回答是正确的,应该可以解决您的问题 -> 您应该使用复选标记接受它。
    猜你喜欢
    • 2012-09-07
    • 2019-02-06
    • 1970-01-01
    • 2010-11-08
    • 2017-07-01
    • 2018-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多