在应用程序中将 Youtube 视频保存到 iPhone

2023-11-20

在应用程序中播放 Youtube 视频非常简单,并且有详细的文档记录。

这样做有两个问题:

  1. 关闭 Youtube 播放器后,如果用户想再次播放,则必须再次等待在线流媒体
  2. 无法离线播放(在家加载视频以便在路上观看)

有没有人有代码:

  1. 下载 Youtube 视频到文档文件夹并显示下载进度
  2. 通过从文档文件夹加载文件来播放下载的视频(意味着即使未连接到互联网)

要从 YouTube 下载视频:

  1. 通过 YouTube API 或任何其他方法获取要下载的 URL。
  2. 创建一个NS输出流 or NS文件句柄在临时文件上打开(在NSTemporaryDirectory()或文档目录中的临时命名文件)。
  3. 设置进度条以及您需要执行的任何其他操作。
  4. 分配并启动 NSURLConnection 以从 URL 获取文件。不使用sendSynchronousRequest:returningResponse:error:, 当然。
  5. In the connection:didReceiveResponse:委托方法,读出要下载的数据长度,以便正确更新进度条。
  6. In the connection:didReceiveData:委托方法,将数据写入输出流/文件句柄并根据需要更新进度条。
  7. In connectionDidFinishLoading: or connection:didFailWithError:,关闭输出流/文件句柄并根据需要重命名或删除临时文件。

要播放它,只需使用 NSURL 即可fileURLWithPath:创建一个指向文档目录中本地文件的 URL,并像播放任何远程视频一样播放它。

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

在应用程序中将 Youtube 视频保存到 iPhone 的相关文章

  • 允许的 APNS 持续连接数量是多少?

    我正在尝试编写服务器端代码来为我的应用程序发送推送通知 根据 Apple 的建议 我计划保留连接并根据需要发送推送通知 Apple 还允许打开和保留多个并行连接以发送推送通知 您可以与同一网关或多个网关实例建立多个并行连接 为此 我想维护一
  • 滑动删除不起作用

    滑动删除功能在我的表格视图中不起作用 我已经在导航栏中实现了 commitEditingStyle 委托和编辑按钮 因此 当用户单击编辑按钮时 删除和添加按钮会相应显示 但是 在滑动时 删除按钮不会出现 并且似乎它无法将滑动识别为对 set
  • Objective-C:在哪里定义宏以便随处可用?

    我有一个 iOS 应用程序 它在许多视图控制器中使用相同的字符串 数字等 所以我认为最好在一个文件中定义这些常量并在所有视图控制器实现中使用它 优点是更改一个数字 我只需要做一次 而不是在所有视图控制器中都使用该数字 实际上 我的 h 文件
  • NSDictionary 上的 NSPredicate

    我试图根据字母表在表格视图中创建部分 并在这些部分下按字母顺序对我的条目进行排序 我已经收集了 bandArrayIndex 中 bandArray 每个条目的第一个字母 现在我尝试使用 NSPredicate 来计算每个字母有多少个 我正
  • 当应用程序退出活动状态时,MPMovies PlayerViewController 被解雇

    当我将 iPhone 设置为睡眠状态 切换到另一个应用程序等 然后再次返回时 之前的可见内容MPMoviePlayerViewController 提出与presentMoviePlayerViewControllerAnimated 已经
  • 最近打开的应用程序[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 有什么方法可以获取最近打开的应用程序 例如 4 个 的列表吗 如果是这样 怎么办 可可麦克 看看LaunchServices LSSh
  • 在 uilabel 中查找文本的位置 {x,y}

    我有一个来自服务器的字符串 我正在 UILabel multiligne 上显示它 在该字符串中 我正在识别一些特定的子字符串 我想在该子字符串上放置一个按钮 按钮将是 UILabel 的子视图 为此 我需要子字符串坐标 我经历过这个 但我
  • 您是否标记 UIView 或将它们保留为属性?

    这主要是一个风格问题 但自从我开始为 iPhone 编程以来 我一直很好奇其他人的想法是什么 当您的 iPhone 应用程序中有一个 UIView 并且需要在应用程序的其他位置访问它时 通常在视图控制器中的另一个函数中 您是否喜欢用整数标记
  • 如何禁用 UITableView 中某些行的删除操作?

    我知道使用setEditing 启用UITableView的编辑模式 但我更喜欢禁用某些特定行的操作 启用其他行 是否可以 Thanks interdev 实施the tableView canEditRowAtIndexPath meth
  • 是否有适用于 iPad 2 的条码扫描仪 SDK? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 iOS 8 自定义键盘发送图像?

    我一直在为 iOS 8 开发自定义键盘 但在尝试使用键盘发送图像时偶然发现了一个问题 我做了一些研究 似乎没有一种简单的方法可以做到这一点UITextDocumentProxy因为只有NSStrings被允许 我是否忽略了使用自定义键盘发送
  • 使用 iPhone 中的地图视图读取当前位置名称

    我读取了当前位置的纬度和经度值 然后成功将该位置固定在 iPhone 中 现在我想使用这个纬度和经度值读取该地名 我使用以下代码来读取查找当前位置 void mapView MKMapView mapView1 didUpdateUserL
  • 持久化 UINavigationItem 的 rightBarButtonItem 属性

    这可能是一个愚蠢的问题 但是有可能保持正确的吗 UIBarButtonItem跨由一个管理的多个视图UINavigationController 我的一系列观点通常具有相同的权利UIBarButtonItem 但是当我将新视图推送到我的UI
  • 如何将 UILabel 的值绑定到实例变量?

    我是 mac objective c 的新手 我的问题是 我想知道是否可以将 UILabel 文本绑定到变量 而不必在值更改时手动设置文本 例如 在 Mac OS 上 当我打开新的 Finder 窗口并删除文件时 任务栏中的全局可用空间就会
  • 在 XCode 中链接静态 ObjC 库的过程

    我正在尝试链接到静态库 但不断收到链接器错误 我发现了一些发布示例的网站 但我无法看到我做错了什么 首先 我创建一个链接到我的库的项目 添加 gt 现有文件找到我的 xcodeproj 文件选择 将项目复制到目标组文件夹 选择我的宿主项目作
  • 将 SSLSetEnabledCiphers 与 AFNetworking 结合使用来禁用弱密码

    我正在尝试禁用一些密码 弱 例如单个 DES 单个 DES 40 位等 我尝试过使用这段代码在 Cocoa 中使用 CFSocket CFStream 时如何设置 SSL 密码 https stackoverflow com questio
  • 忽略触摸事件,让其下面的视图处理触摸?

    我有一个用户可以触摸的可拖动视图 但它的某些矩形将没有图像 alpha 0 当用户单击透明区域时 我能够在没有 alpha 信息的情况下构造透明区域 我希望透明区域下方的视图 同一类 来检测触摸 我的策略是当用户触摸透明区域时让视图忽略触摸
  • ios水平居中约束问题?

    I am having hard time in learning constraints auto layout in iOS I have used any width any height I have a storyboard sc
  • insertNewObjectForEntityForName:

    我使用 Xcode xcdatamodel 文件编辑器设置了一个实体 我创建了一个名为 Person 的实体 添加了一些属性 然后生成了一个 m 文件来表示它 一切都很好 现在 当我去编写一行代码时 例如 Person person Per
  • 在发生更改事件时将货币格式重新应用到 UITextField

    我正在使用一个包含本地化货币值的 UITextField 我看过很多关于如何使用此功能的帖子 但我的问题是 如何在每次按键后将货币格式重新应用到 UITextField 我知道我可以通过以下方式设置和使用货币格式化程序 NSNumberFo

随机推荐

  • 在 django 模板中包含 javascript 的最佳实践

    以前我曾经在模板中这样做过 但这会导致所有js代码都显示在页面源上 我的模板中没有使用任何 Form 那么我可以使用 Media 类来添加 js 吗 我应该只使用像往常一样 没有include模板标签 Django includetempl
  • Rails 7 资产管道 SassC::SyntaxError 与 Tailwind

    我正在努力将一个新的 Rails 7 项目部署到生产环境 尝试使用 Heroku 和 Render com 但在构建过程中出现以下错误 tailwindcss i app assets stylesheets application tai
  • 如何从 loadContent() 将 html 和 javascript 加载到 webengine 中?

    有人可以提供一些关于如何从 loadContent 将以下内容加载到 webviewer 上的建议吗 http jsbin com aqupun 6 edit 我试图做这样的事情 但它似乎不起作用 谢谢 Scanner sc1 new Sc
  • 在特定上下文中调用 eval()

    我有以下 javaScript 类 A function a function eval A prototype b function arg1 arg2 do something 现在我们假设在 eval 中我传递的字符串包含使用一些参数
  • 无法使用 NetBeans 8.1 的 Gradle 支持插件构建 Gradle 项目

    我开始了一个学习项目来熟悉 Gradle Spring 和 Vaadin 到目前为止 我在一些 Spring 指南的帮助下成功创建了基本的 CRUD 功能 现在我想将该项目导入 NetBeans 我安装了Gradle 支持插件NetBean
  • 有没有办法省略 C 预处理器输出顶部的定义(行标记)?

    如果我处理以下内容test def输入文件与gcc C x c E test def define TEST foo int TEST 我希望输出只是 int foo 相反 我得到 1 test def 1
  • 存储静态类的内存分配 C#

    我读过一篇文章 它让我对内存分配感到困惑 其中指出 单例对象存储在堆上 而静态类则存储在堆上 存储在堆栈中 链接是 http www dotnetjalps com 2013 06 Static vs Singleton in Csharp
  • Woocommerce Rest API v2 中用户登录/注册的端点

    我已在 Woocommerce REST API 文档中完全搜索了用户登录 注册的端点 但无法找到它 谁能给我提供端点及其文档的链接 您可以通过多种方式实现这一目标 第一种方法是 它不仅适用于 WooCommerce 也适用于所有 Word
  • 使用 ADO.NET 实体框架从表中存在的值生成枚举

    我的要求是根据数据库表中存在的值创建一个枚举 我正在使用 ADO NET 实体框架模型 edmx 文件 你们中的任何一位都可以帮助我吗 使用 T4 模板可能要容易得多 这是一篇关于入门的非常好的文章 我下面的示例使用直接 SQL 连接 但正
  • 如何实现 ag-grid 行编辑的验证规则

    我目前有一个带有内联编辑的 html 表 它使用普通的 Angular Reactive Forms 包括很多验证规则 var formArray new FormArray this items map createItemFormGro
  • 如何将对象上下文传递给 jQuery.ajax JSONP 回调?

    当 ajax 提供程序预定义其回调时 我在将 javascript 对象上下文传递到 JSONP ajax 请求的回调处理程序时遇到问题 Flickr 是服务提供商 我将举一个简化的例子 function Person anId this
  • 无法对基本类型 char 调用 equals(char)

    我是编程新手 并试图完成一个基本的猜谜游戏 但我遇到了这个错误 需要一些帮助 因为我已将 猜测 设置为char 然后想将它与字符数组进行比较 但尝试了几种不同的方法 但还没有任何乐趣 它给了我底部 if 语句的错误 其中包含 guess e
  • 导入语句中的“show”和“as”有什么区别?

    有什么区别show and as在进口声明中 例如 有什么区别 import dart convert show JSON and import package google maps google maps dart as GoogleM
  • 获取每个二维数组的累积计数

    我有一般数据 例如字符串 np random seed 343 arr np sort np random randint 5 size 10 10 axis 1 astype str print arr 0 1 1 2 2 3 3 4 4
  • Xcode 6 中未创建 Swift to Objective-C 标头

    我最近一直致力于将 Swift 添加到现有项目中 以便以现实世界的方式进行尝试 将 Swift 源文件添加到项目后 我在获取 桥接头 即 Objective C 到 Swift 方面没有任何问题 But the Swift h应该公开 Sw
  • 没有记录的 Linq to Sql Sum

    我正在创建一种收集整个月累计总数的方法 问题是给定月份的某些项目可能不收费 因此不会返回任何行 我可以看到在没有数据的情况下这会如何出错 double fuelCost double from a in db EquipmentFuelLo
  • Django 脆皮表单不加载 CSS

    我在SO上看到这个问题 Django Cripy Forms 找不到 CSS 并遵循已接受答案中的所有建议 即 crispy forms 列在 INSTALLED APPS 下 我没有运行生产服务器 所以我不确定是否应用了collectst
  • 如何通过索引提取c#中字符串中的特定字符[重复]

    这个问题在这里已经有答案了 在 C 中 字符串就像数组 当您编写 str i 时 您可以在其中访问数组的 i 1 元素 类似于 C 中的内容 我不需要 indexOf 方法 因为这是不同的 我需要一些东西通过索引将字符带入字符串中 是的 您
  • 启动时将参数传递给 pyqt 线程

    当线程启动 start 时 有什么方法可以将参数传递给 QThread 吗 我在 stackoverflow 中找到了一个使用 pyqt 线程的示例 但我想知道如何传递参数 以防我希望工作线程处理我传递给其 run 函数的数据 我参考的帖子
  • 在应用程序中将 Youtube 视频保存到 iPhone

    在应用程序中播放 Youtube 视频非常简单 并且有详细的文档记录 这样做有两个问题 关闭 Youtube 播放器后 如果用户想再次播放 则必须再次等待在线流媒体 无法离线播放 在家加载视频以便在路上观看 有没有人有代码 下载 Youtu