场景
在 xcasset 添加 Data Set 内容, 如 .mp3, .mp4 等非图片内容时, 通过 NSBundle 无法获取文件路径, -[NSBundle pathForResource:ofType:] 方法返回为 nil.
目标
不改变文件存放位置的前提下, 获取文件的路径或二进制内容.
前置
Assets.xcassets 内选择 + -> 选择 New Data Set, 将 demo.mp4 添加到指定位置, Set 的名字重名为 test.
方法
通过 NSDataAsset 类来获取 xcasset 文件夹内的文件:
1 | // xcasset 内包含 test.mp4 Data Set |
至此, 就可以获取 xcasset 中非图片资源了
注意
NSDataAsset 为 iOS 9.0 及以上 才可使用的方法