iPhone SDK:如何将视频文件下载到文档目录然后播放?

2023-12-26

我已经在这个代码上闲逛了很多年了,如果有人可以提供从服务器下载此文件的代码示例,我将非常感激http://www.archive.org/download/june_high/june_high_512kb.mp4 http://www.archive.org/download/june_high/june_high_512kb.mp4,(顺便说一句,它实际上不是这个文件,它只是任何试图帮助我的人的完美示例),然后从文档目录中播放它。我知道我问这个问题似乎很懒,但我尝试了 NSURLConnection 的许多不同变体,这让我发疯。 另外,如果我确实设法下载了视频文件,那么我假设此代码将成功播放它是否正确:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"june_high_512kb.mp4"]; 
NSURL *movieURL = [NSURL fileURLWithPath:path]; 
self.theMovie = [[MPMoviePlayerController alloc] initWithContentURL:movieURL];
[_theMovie play];

如果上面的代码可以从文档目录播放视频文件,那么我想我唯一需要知道的是,如何从服务器下载视频文件。这似乎是我的主要问题。任何帮助是极大的赞赏。


您的代码将可以播放电影文件。

最简单的下载方式是同步:

NSData *data = [NSData dataWithContentsOfURL:movieUrl];
[data writeToURL:movieUrl atomically:YES];

但最好是异步下载(对于应用程序响应能力等):

    NSURLRequest *theRequest = [NSURLRequest requestWithURL:movieUrl cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:60];
    receivedData = [[NSMutableData alloc] initWithLength:0];
        NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self startImmediately:YES];

这需要实现非正式的 NSURLConnection 协议:

- (void) connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
    [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
    [receivedData setLength:0];
}

- (void) connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    [receivedData appendData:data];
}

- (void) connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
    [UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
    [connection release];
}

- (NSCachedURLResponse *) connection:(NSURLConnection *)connection willCacheResponse:(NSCachedURLResponse *)cachedResponse {
    return nil;
}

- (void) connectionDidFinishLoading:(NSURLConnection *)connection {
    [UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
    [connection release];
    [self movieReceived];
}

然后在 movieReceived 方法中保存(并播放)电影文件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iPhone SDK:如何将视频文件下载到文档目录然后播放? 的相关文章

  • 以编程方式进行排序时检索 ViewController 堆栈

    static func showMenuView parentVC UIViewController let storyboard UIStoryboard name Main bundle nil let resultController
  • 如何使用 UISlider 以及如何将滑块设置为特定值?

    我是第一次使用 UIslider 首先我想知道如果值的范围是 0 到 10 如何获取滑块位置的值 其次 我希望我的滑块设置为 5 个不同的值 如 1 2 3 4 5 slider should not set between the lab
  • iPhone 中的 UIGlassButton

    有人使用 Glass Button 提交过申请吗 获得批准了吗 我正在尝试使用彩色圆形按钮 但不想使用这些技巧 如何在 iPhone 上设置按钮背景颜色 https stackoverflow com questions 372731 ho
  • 使用 NSJSONSerialization 解析 JSON

    对此进行了太多讨论 但我不知道如何解决我的问题 这是我从 WorldWeatherOnline 获取的 JSON 数据 JSON 有效 但我不知道如何解析它 这是我的代码 后面是 JSON 请帮忙 NSError errorInfo NSD
  • 声音在模拟器中工作,而不是在真实 iPhone 中工作

    有几短音效播放的样本在模拟器中很好 但在真正的 iPhone 中根本不行3GS 以下是 Apple SysSound 示例中的代码 CFBundleRef mb CFBundleGetMainBundle CFURLRef soundFil
  • 下载前获取文件大小并计算已下载的文件大小 (http+ruby)

    谁能帮我 get the 之前的文件大小我开始下载 显示多少 已下载 require net http require uri url http www onalllevels com 2009 12 02TheYangShow Squid
  • UITextField 字体大小在开始或停止输入字符时发生变化

    我见过很多线程 但没有找到解决这个问题的任何具体解决方案 我使用 XIB 创建了 UITextfield 尚未以编程方式对该字段执行任何操作 一旦我开始打字 文本字段的字体就会改变 一旦我将焦点移出文本字段 并且随着键盘消失 字体大小就会减
  • iOS 上每个选项的带有图像的操作表

    有没有办法在 iOS 上将图像添加到操作表中 与苹果在应用程序商店或苹果音乐应用程序上所做的一样 我对苹果文档的基本搜索表明我没有在操作表中子类化或添加子视图 UIActionSheet 并非设计为子类化 也不应向其层次结构添加视图 苹果文
  • 使用 Objective-C 在 iPhone 应用程序中显示或隐藏 UIButton

    我在用UITextView编辑文本 我想用两个UIButtons编辑并保存 最初我想显示编辑UIButton 当用户单击编辑时我想显示保存UIButton 当内容成功保存后 我不想再显示保存按钮 我是一名 C 编码员 在 C 中我曾经这样做
  • 使用 R 下载压缩数据文件、提取并导入 .csv

    我正在尝试使用以下方法从网页下载并提取 csv 文件R 这个问题是重复的使用 R 下载压缩数据文件 提取和导入数据 https stackoverflow com questions 3053833 using r to download
  • 自动布局和ios5

    我正在使用故事板 我已经使用了自动布局 但它不适用于 ios5 并且会崩溃 所以我想删除它 但是 如何取消选中自动布局 但如果我取消选中自动布局 我如何为 iPhone 4 和 5 设置屏幕 Regards 您可以在 IB 中禁用自动布局
  • 如何使用 ZBar 读取器的 scanCrop 属性?

    我正在使用 iPhone 的 ZBar SDK 来扫描条形码 我希望阅读器仅扫描特定的矩形而不是整个视图 为此需要将阅读器的 scanCrop 属性设置为所需的矩形 我很难理解必须设置的矩形参数 有人可以告诉我如果在纵向视图上它的坐标是 我
  • iPhone 标签栏上的未读计数

    在 Cocoa Touch 上实现 TabBar 上图标的未读计数的最佳方法是什么 我想模仿 SMS 或邮件应用程序的行为 向我的应用程序的用户显示未读消息计数 并使用包含数字的红点 您正在寻找的属性称为徽章 您可以通过执行以下操作来设置它
  • 维护 UISegmentedControl 中的选择

    我可以保持 UISegmentViewControl 段的选定状态吗 即 即使用户选择了另一个段 也可以保持一个段显示为选中状态 我似乎在任何地方都找不到任何可以做到这一点的东西 这是不可能开箱即用的 看如何才能选择 UISegmented
  • 通过 iPhone 连接到 AT&T 无线网络的谷歌静态地图无法工作 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 最近 当我的 iPhone 连接到 AT T 无线网络时 我在检索静态地图时遇到了问题 但是 当我连接到本地 WiFi 时工作正常 上周日停止工作了几
  • 应用未能及时恢复

    我在一个非常具体的场景中遇到 未能及时恢复 崩溃 我认为与看门狗相关 仅在从后台恢复时 并且仅在进入后台后在很短的时间内执行此操作 a最多几秒钟 这似乎是相关的崩溃日志 Incident Identifier E30F2238 5B15 4
  • UIViewController 作为单例

    我在标签栏应用程序中有一个 UIViewController 我已经从 MainWindow nib 文件添加了控制器 即不是以编程方式 我的问题是如何使我的视图控制器成为单例 解决 Facebook 委托问题 您可能想让您的 Facebo
  • 无法使用 NSDateFormatter 解析日期

    我正在获取 RSS 其中我收到以下日期戳 2010 05 10T06 11 14 000Z 现在我正在使用 NSDateFormatter 来解析这个日期时间戳 parseFormatter setDateFormat yyyy MM dT
  • UIWebView 内的滑动手势识别

    我已经阅读了很多关于此的问题 但似乎没有一个能够实现我想要的 所以可以说我有一个任意的UIWebView里面的一个UIViewController The UIViewController has a SwipeGestureRecogni
  • 在 iPhone 模拟器中从硬盘读取文件

    是否可以将文件 从我的普通文件系统 读入在 iPhone 模拟器上运行的 iPhone 应用程序 据我所知 iPhone 本身没有 用户可访问的 文件系统 但这只是为了测试 并且只能在模拟器中运行 该文件将是一个可以在应用程序运行时编辑的文

随机推荐

  • 如何使选项菜单始终显示在屏幕上

    我需要始终在屏幕上显示选项菜单 我已经编写了在活动启动时打开选项菜单的代码 Override public void onAttachedToWindow openOptionsMenu 但是 单击屏幕上的另一个项目时 菜单会下降 我希望菜
  • 保留history.pushState ie8-9的黑客

    在大多数现代浏览器上 我可以使用 history pushState Our Work url path 显然 IE 不支持这一点 但我想知道为什么我的简单 hack 不起作用 history pushState function stat
  • 无法删除 matplotlib 在 imshow() 图周围的填充

    我正在将 matplotlib 嵌入到我的 PyQt4 GUI 中 我玩得很开心 我可以显示图像 但它在我想要删除的内容周围添加了非常厚的填充 这就是我正在做的 from PyQt4 QtCore import from PyQt QtGu
  • 使用 MethodHandle::invokeExact 作为方法引用引起的 LambdaConversionException 导致的 BootstrapMethodError

    我试图检查是否可以使用 MethodHandle invoke 或 MethodHandle invokeExact 作为接受 MethodHandle 并返回通用输出的功能接口的方法引用 我知道 invoke 和 invokeExact
  • 关于高分辨率性能计数器及其与.NET Stopwatch相关的存在的解释?

    静态内部Stopwatch在构造函数中我们可以看到下面的代码 它主要检查高分辨率性能计数器是否存在 static Stopwatch if SafeNativeMethods QueryPerformanceFrequency out Fr
  • 但是, import sklearn 仍然给我错误。下面给出更多细节。我该如何解决这个问题?

    我在 Windows 7 上使用 python3 6 之前尝试过 python3 8 来解决同样的问题 我已经安装了 joblib 0 14 0 numpy 1 17 4 scikit learn 0 22 和 scipy 1 3 3 用于
  • 导入 igraph 时出错

    在 python 中导入 igraph 时 出现错误 见下文 由于 igraph 不是 anaconda 的一部分 因此我执行了以下概述的安装步骤 libglpk 35 dylib是什么 我应该如何加载它 为什么会出现这个问题 igraph
  • Visual Studio 可扩展性,如何枚举解决方案中的项目?

    只是想加快 SDK 的使用速度 所以 我创建了自己的工具窗口 现在我想迭代当前加载的解决方案中的现有项目并在工具窗口中显示它们的名称 但不太确定枚举项目的最佳方式是什么 有什么线索吗 检查这个微软的代码 https github com M
  • 使用 OpenCV 生成鸟瞰图/顶视图

    我正在尝试从图像生成鸟瞰图 对于相机的内在特性和变形 我使用的是从驾驶模拟器中检索到的硬编码值 该模拟器的顶部安装了相机 代码的基础来自 使用 OpenCV 库学习 OpenCV 计算机视觉 第 409 页 当我在包含每行 3 个内角 每列
  • ggplot 指定分类 x r 的垂直线段的位置

    我正在绘制行数据 并为统计计算的拟合值添加了一段可信区间和一个黑点 我的问题是我想让这些线 和黑点 相对于行数据稍微移动 水平 我尝试了抖动及其所有可能的组合 结果很糟糕 因为我从不同的列中获取了 y start 和 end 的值 因此 由
  • 泛型中奇怪的嵌套结构类型

    有人可以解释一下嵌套在泛型中的结构类型的奇怪构造吗 implicit def Function1Functor R Functor type R gt new Functor type R gt 这个例子来自Scalaz库 函子 scala
  • 毫秒是python中箭头时间库的一个特性吗

    使用这种方法 arrow utcnow format YYYY MM DD HH mm ss 或者箭头中类似的东西是否可以将毫秒添加到时间中 事实上 您最多可以使用 6 位数字来表示秒的小数部分 gt gt gt now arrow utc
  • 使用正则表达式有效测试“EndsWith”

    我需要构建一个正则表达式 NET 语法 来确定字符串是否以特定值结尾 具体来说 我需要测试文件是否具有特定扩展名 或一组扩展名 我试图修复的代码使用的是 png jpg gif 在我的场景中 对于失败的匹配来说 速度非常慢 可能是由于回溯
  • 工作表、单元格和范围的默认范围是什么?

    当您仅键入 worksheets 时 默认范围 ActiveWorkbook 或 ThisWorkbook 是什么 对于那些不了解这些区别的人来说 它们非常重要 尤其是在 Excel 2013 中 当您希望在切换到不同工作簿时运行宏时 在标
  • 如何高效调试webpack应用?

    我正在尝试在我的项目中采用 webpack 开发服务器 我知道它被广泛采用 因此令我惊讶的是调试应用程序似乎非常困难 由于 webpack 默认情况下会生成一个巨大的包 因此源映射是必须的 我对他们有一个很大的问题 根据devtool模式下
  • 用索引展平嵌套列表

    给定一个任意大小的任意深度嵌套列表的列表 我想要一个对树中所有元素进行平面 深度优先的迭代器 但也具有路径索引 使得 for x y in flatten L x L y 0 y 1 y 1 That is L 1 2 3 4 5 6 7
  • RxJava 缓冲区直到更改

    我有一个可观察的对象 它会发出大量数据 例如 1 1 1 2 2 2 3 3 1 1 5 5 在RxJava中我们可以使用直到改变 http reactivex io documentation operators distinct htm
  • jQuery 获取多个属性

    我有一个元素需要获取一组特定属性 例如 div class myClass div 在这个例子中 我需要获取所有data 属性并将它们放入数组 名称和值对 中 在此示例中 最终数组将如下所示 myDataArray data country
  • 在运行时更改 Swift 中文本字段的键盘类型

    我想知道是否有一种方法可以检查文本字段是否包含特定字符 如果是这种情况 请更改显示的键盘类型 这是我尝试过的 但无法改变 这是当编辑文本字段发生更改时发生的操作 IBAction func decOrNot sender Any let c
  • iPhone SDK:如何将视频文件下载到文档目录然后播放?

    我已经在这个代码上闲逛了很多年了 如果有人可以提供从服务器下载此文件的代码示例 我将非常感激http www archive org download june high june high 512kb mp4 http www archi