从资产库 URL 获取 NSData

2023-12-06

我正在尝试从设备库的 mp4 文件获取 NSData。

这个链接看起来像这样:

assets-library://asset/asset.mp4?id=32515720-939A-456F-958F-0B2F397416EB&ext=mp4

我试过这段代码:

ALAssetRepresentation *rep = [asset defaultRepresentation];
Byte *buffer = (Byte*)malloc((NSUInteger)rep.size);
NSUInteger buffered = [rep getBytes:buffer fromOffset:0.0 length:(NSUInteger)rep.size error:nil];
NSData *data = [NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES];

But defaultRepresentation在 iOS 9 中已弃用。

我也尝试过[NSData dataWithContentsOfFile:url];但它返回零。


全班的ALAsset在 iOS 9 中已弃用。您现在应该考虑使用PHAsset反而。有一个API可以获取PHAsset来自旧资产 URLALAsset。请参阅下列的:

Assets Library 框架在 iOS 8.0 及更高版本中已弃用,取而代之的是 Photos 框架。如果您的应用程序之前存储了来自 ALAsset 对象的 URL,并且您需要检索相应的照片框架对象,请使用此方法。

+ (PHFetchResult<PHAsset *> *)fetchAssetsWithALAssetURLs:(NSArray<NSURL *> *)assetURLs
                                                 options:(PHFetchOptions *)options

然后你可以使用以下内容method in PHImageManager得到NSData of the PHAsset:

- (PHImageRequestID)requestImageDataForAsset:(PHAsset *)asset
                                     options:(PHImageRequestOptions *)options
                               resultHandler:(void (^)(NSData *imageData,
                                                       NSString *dataUTI,
                                                       UIImageOrientation orientation,
                                                       NSDictionary *info))resultHandler
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从资产库 URL 获取 NSData 的相关文章

  • Swift try inside Objective-C 块

    我需要创建一个函数foo它接受一个抛出闭包作为参数 我可以使用 Swift 或 ObjC 来实现它 但我需要能够从两者中调用它 像这样 Swift func bar throws func foo block throws gt void
  • Swift:如何让游戏中的角色只有落地后才能跳跃?

    我正在开发一款游戏 我的角色可以从一个陆地跳到另一个陆地 我已经把所有事情都做好了 除了我剩下的问题是 如果你继续点击屏幕 他可以永远跳跃 我希望他必须先落地才能再次跳跃 import SpriteKit import GameplayKi
  • 在 iOS 7 中查看 Core Data 创建的 sqlite 文件时出现问题

    当我尝试访问由核心数据创建的数据库文件时遇到问题 DB 文件位于 Documents 文件夹中 我已将其复制到桌面并使用 Firefox 插件打开它 Hello sqlite文件不包含任何行我有使用核心数据插入值 我正在使用 iOS 7 模
  • 如何本地化 iOS 故事板

    我有一个包含一些视图的 iPhone 故事板 例如 导航项标题名为News 应翻译为其他语言 当我向故事板添加新的本地化版本时 它会为新语言创建当前故事板的副本 在这里我可以更改导航项的标题 但对我来说它似乎不太有用 如果我的故事板包含 1
  • supportedInterfaceOrientations 方法不会重写其超类中的任何方法

    在 UIViewController 中 这段代码 public override func supportedInterfaceOrientations gt UIInterfaceOrientationMask if let mainC
  • 为什么 iPhone 应用程序的 main() 函数没有机会完成?

    考虑以下main 大多数 iPhone 应用程序都采用以下方法 int main int argc char argv NSAutoreleasePool pool NSAutoreleasePool alloc init int retV
  • 使用 JSONKit 解析 JSON 文件

    我正在构建一个音叉应用程序 货叉应允许最多 12 个预设节距 此外 我希望允许用户选择一个主题 每个主题都会加载一组预设 不必使用所有预设 我的配置文件看起来像这样 theme A3 comment An octave below conc
  • 从字典创建 Swift 对象

    如何根据 Swift 字典中的查找值动态实例化类型 希望这对其他人有用 我们需要进行一些研究才能弄清楚这一点 目标是避免巨大的 if 或 switch 语句从值创建每个对象类型的反模式 class NamedItem CustomStrin
  • Bootstrap 响应式表格在 iOS 设备上无法垂直滚动

    这就是我所拥有的 div class table responsive table class table style background transparent table div 我正在使用以下 bootstrap css 文件 ht
  • 按升序对 NSDictionary 进行排序

    我正在尝试排序NSDictionary按升序排列 我正在使用这段代码 NSDictionary valDict self mGetDataDict key rowKey for NSString valueKey in valDict al
  • iOS - 在相机上放置自定义叠加层(垂直对齐)。顶部黑条的大小

    我正在寻找以下问题的编程解决方案 我想在相机 iOS 上绘制自定义叠加层 我希望它位于相机输出视图的垂直中央 我已经完成了相对于屏幕而不是相机图片居中绘制自定义视图 为此 我需要获得顶部黑条的大小 我怎么才能得到它 顶部和底部栏的大小不相等
  • 广告标识符和标识符ForVendor返回“00000000-0000-0000-0000-000000000000”

    我已经实现了这个方法来获得advertisingIdentifier and identifierForVendor NSString advertisingIdentifier if NSClassFromString ASIdentif
  • 使用未声明的类型“对象”

    这太奇怪了 通常我可以理解未声明的类 但这是声称 Object 类本身未声明 NSObject 可以工作 但我的项目设置方式我需要它是一个纯 Swift 对象 我的类标题如下所示 import UIKit import Foundation
  • 如何将nsmutable数组添加到sqlite数据库表中

    如何将nsmutablearray添加到sqlite数据库表中 有人可以帮我编码吗 您可以使用 for int i 0 i lt mutArray count i NSString string mutArray objectAtIndex
  • AdMob 和 DFP 广告联盟之间的区别?

    我正在尝试在我的 iOS 应用程序上显示横幅广告和插页式广告 但现在我对广告网络感到困惑 AdMob 与 DFP 有何不同 哪一种更适合投放广告 有人可以提供帮助吗 提前致谢 AdMob 是一个广告网络 作为发布商 您可以通过展示从网络投放
  • Swift - 保存在 TableView 中选择的复选标记

    我对 Swift 相当陌生 并且在 TableView 多重选择方面遇到问题 我有多个选择 可以用复选标记进行检查 类似于待办事项列表 当我检查项目时 我希望能够返回 ListView 并保存我的选择 我假设将其保持在已保存状态的代码将位于
  • Facebook 登录打开错误的应用程序

    我正在尝试使用 facebook 实现应用程序的登录 但每次我尝试登录时 它都建议打开错误的应用程序 我尝试了一些在这里找到的东西 但没有成功 在 Facebook 的开发者页面上我添加了一个后缀 我的 plist 如下 有谁知道发生了什么
  • dispatch_semaphore_t 重用 - 我在这里缺少什么?

    我有一些代码 其中使用dispatch semaphore t 来表示操作完成 当信号量是成员变量时 它的行为似乎不正确 我将展示有效的示例代码和似乎无效的示例代码 implementation someClass dispatch sem
  • 隐藏 UITableview 单元格

    我正在尝试从 UITableView 中隐藏单元格 就像删除操作一样 但我只想隐藏它以便稍后在相同位置显示它 我知道 UITableViewCell 有一个名为 隐藏 的属性 但是当我使用此属性隐藏单元格时 它会隐藏但没有动画 并且会留下空
  • iOS 中是否需要 Google App Indexing SDK 才能使用 Google DeepLinking?

    我想用谷歌应用程序索引与我的网页和 iOS 应用程序 我支持通用链接 or 深层链接用谷歌术语 与苹果Search并相应地设置我的网页 From 谷歌文档 https developers google com app indexing i

随机推荐

  • OpenCV v1/v2错误:该功能未实现

    我正在尝试让 OpenCV 在我的 Ubuntu 机器上使用 Python 我已经下载并安装了 OpenCV 但是当我尝试运行以下 python 代码时 应该从网络摄像头捕获图像并将其推送到屏幕 import cv cv NamedWind
  • 您可以将脚本分配给页面元素(形状等)吗?

    我想为学生制作一个交互式幻灯片 我想添加形状 因此当您单击形状时 它将运行 Apps Script 脚本 这在 Google 表格中是可能的 所以 我认为你也可以用幻灯片来做到这一点 没有办法运行容器绑定脚本通过点击 Google 幻灯片中
  • 使用新的亚马逊服务搜索亚马逊示例

    我找不到新的亚马逊服务的工作示例 或者至少在过去几年内 无论我在标题中输入什么内容 最接近的工作示例都会返回一个空项目 代码是 Amazon ProductAdvertisingAPI client AWSECommerceServiceP
  • 如何在 Three.js 中获取顶点的绝对位置?

    据我所知var point object geometry vertices i 将返回相对位置x y and z对象几何内部的点 如果对象被移动 旋转或缩放 如何获得绝对位置 您可以像这样获取顶点的世界位置 const vertex ne
  • 如何从互不关注的号码池中生成随机数

    我有一个数字池 例如 3 6 7 11 20 我需要每个数字在我的集合中出现 x 次 我的解决方案是创建一个包含两个整数 num numOfAppearnces 的类 我们称之为 元素 我在 arrayList 中创建了一个 元素 池 然后
  • 对 LAPACK 和 BLAS 子例程的未定义引用

    我试图了解 Fortran 中的 BLAS 和 LAPACK 如何工作等等 所以我编写了一个生成矩阵并将其反转的代码 这是代码 program test Implicit none external ZGETRF external ZGET
  • HRESULT 异常:0x80040111 (CLASS_E_CLASSNOTAVAILABLE)

    使用 Net 4 0 WPF 应用程序 C 我的应用程序中有以下代码 当Select单击按钮 OpenFileDialog fdgSelectFile bool dialogResult try fdgSelectFile new Open
  • Scala 通过 Spark 与纱线 - 缺少大括号字符串

    我编写了一些 scala 代码 看起来像这样 object myScalaApp def main args Array String Unit val strJson args apply 0 println strJson strJso
  • 如何使用 Java 的服务帐户访问 Google 表格?

    我正在尝试从服务帐户访问 Google 表格 服务帐户有权访问该表格 但我有一个问题 所有文档 包括官方文档点使用GoogleCredential自 1 7 起已弃用 弃用表示您应该使用库google auth library这就是我正在做
  • 查看扩展的 C 宏

    如果我想扩展 C 宏 有哪些好的方法可以做到这一点 除了手动跟踪之外 例如 GTK WIDGET SET FLAGS 它使用一个宏 该宏使用一个宏 该宏使用一个 或两个 宏 我只想看到它以某种方式自动扩展 而不是搜索每个宏 每一步 UPDA
  • 非常非常长的数的模 (fmod)

    我想使用 Cpp 查找阶乘中零的数量 问题是当我使用非常大的数字时 include
  • 从帮助 ID 获取 CHM 详细信息

    我有帮助字符串 id 和一些 CHM 文件 通过帮助字符串 我想找到诸如 CHM 文件名 链接到该帮助 ID 的页面 该页面的描述 标题等详细信息 如果您有文件名和搜索条件 我有对多个 CHM 文件执行字符串搜索的所有代码 但我担心的是 只
  • rsyslog 模板 - 正则表达式解析失败

    我正在尝试在 rsyslog 服务器中构建来自 D Link DAP 2310 的日志 它具有非标准日志格式 我的想法是使用 rsyslog 模板中的正则表达式来修复该问题 当我使用 rsyslogd N1 解析 rsyslog conf
  • 如何在 gmaps4rails 中用标记显示用户的位置?

    我一直在尝试运行 gmaps4rails 的自定义使用 并且我设置了代码来在地图上显示我的 json 坐标字符串 并且用户的中心正在工作 我可以从家里 工作场所和我的位置放大到我的位置电话 一旦获得许可 我就无法让js正确地在地图上显示 我
  • 使用 XCTestCase Objective-C 进行多重测试性能

    我在测试类中有2种性能测试方法 如果我单独运行它们 它们就会通过 如果我运行洞类方法 它们会失败并显示消息 由于未捕获的异常 NSInternalInconsistencyException 而终止应用程序 原因 API 违规 多次调用 X
  • 未应用 setPolyToPoly

    谁能帮我解决我遇到的图形问题 这段代码根本不应用 setPolyToPoly 它执行相机旋转 但不执行 polyToPoly 转换 我不明白为什么 final Camera camera mCamera final Matrix matri
  • 从对象数组中返回匹配的对象

    我想根据 searchString 从给定数组中搜索匹配的值对象 例如 搜索字符串为 Object 0 var objArray id 0 name Object 0 otherProp 321 secondVal stack id 1 n
  • 无法在 Spark 中配置 ORC 属性

    我正在使用 Spark 1 6 Cloudera 5 8 2 并尝试以下方法来配置 ORC 属性 但不影响输出 下面是我尝试过的代码片段 DataFrame dataframe hiveContext createDataFrame row
  • 如何使用实体框架代码优先迁移删除唯一索引

    我正在使用启用了 Code First 迁移的 Entity Framework 5 0 我使用以下方法添加了唯一键 CreateIndex dbo Groups Name true 现在我想使用下一个迁移的 Down 方法删除现有的唯一键
  • 从资产库 URL 获取 NSData

    我正在尝试从设备库的 mp4 文件获取 NSData 这个链接看起来像这样 assets library asset asset mp4 id 32515720 939A 456F 958F 0B2F397416EB ext mp4 我试过