gpt4 book ai didi

ios - 我们可以在 ios 中使用 nsdata 创建电影播放器​​吗?

转载 作者:可可西里 更新时间:2023-11-01 06:22:14 26 4
gpt4 key购买 nike

我知道我们可以使用 initWithContentURL: 创建电影播放器​​,我们可以传递 NSUrl 参数。这里我没有 NSUrl,我只有 NSData。通过使用它我可以创建电影播放器​​吗?

最佳答案

没有可用于使用数据初始化 Movieplayer 的方法。

我的建议:您需要将数据作为视频文件写入文档目录,然后使用该 url 初始化播放器。

objective-c

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *appFile = [documentsDirectory stringByAppendingPathComponent:@"MyFile.m4v"];
[data writeToFile:appFile atomically:YES];

这里的data是视频文件的NSData

您现在可以使用 appFile 变量来初始化您的电影播放器​​。

NSURL *movieUrl = [NSURL fileURLWithPath:appFile];
MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController] alloc] initWithContentURL:movieUrl];

swift

保存文件:

let paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)
if let docDir = paths.first
{
let appFile = docDir.appending("/MyFile.m4v")
let movieUrl = URL(fileURLWithPath: appFile)

do
{
try data.write(to: movieUrl, options: .atomic)
}
catch let error as NSError
{
print(error.localizedDescription)
}
}

初始化电影播放器​​:

let moviePlayer = MPMoviePlayerController(contentURL: movieUrl)

注意: MPMoviePlayerControlleriOS 9 中已弃用,因此您可能需要使用 AVPlayerViewController

关于ios - 我们可以在 ios 中使用 nsdata 创建电影播放器​​吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13377996/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com