gpt4 book ai didi

objective-c - UIVideoAtPathIsCompatibleWithSavedPhotosAlbum 在 iPhone 上部署时返回 false

转载 作者:太空狗 更新时间:2023-10-30 03:52:34 24 4
gpt4 key购买 nike

我的应用程序的一个功能是下载一个mp4文件并将其存储到本地手机相册。

从那以后我尝试了几种方法,结果总是一样,它在模拟器上有效,但在实际的 iPhone 上无效。 Xcode 版本为 5.0.1,iPhone 4。

下面是我在使用 ASIHttpRequest 库发布到这里之前最后一次尝试应用的代码,结果仍然相同,它在模拟器上运行,但在手机本身上运行。

  1. 下载:

    ASIHTTPRequest* request = [ASIHTTPRequest requestWithURL:url]; // url is the address to the mp4 file

    NSString* filePath = [NSString stringWithFormat:@"%@%@", NSTemporaryDirectory(), filename]; //filename is the file I save to, e.g. xxx.mp4

    [request setDownloadDestinationPath:filePath];
    [request setDelegate:self];
    [request setDidFinishSelector:@selector[ASIRequestDone:)];
    [request setDidFailSelector:@select[ASIRequestFail:)];
  2. 下载完成后保存到相册(在ASIRequestDone委托(delegate)中)

    if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum(filePath))
    {
    //comes to here when running in simulators
    UISaveVideoAtPathToSavedPhotosAlbum(filePath, self, @selector(video:didFinishSavingWithError:cotextInfo:),nil);
    }
    else
    {
    //always comes to here when running on the actual iPhone.
    }

我已经检查过路径文件是这个

/private/var/mobile/Applications/xxxxxxxxxx/tmp/xxxxx.mp4

这对我来说没问题。我没有得到的是它在模拟器上运行时工作正常,因此我不确定下一步该做什么。 (我还检查了访问相册的权限,是的,该应用程序拥有它)。

我还尝试删除兼容检查并直接进入方法 UISaveVideoAtPathToSavedPhotosAlbum,它没有在委托(delegate) didFinishSavingWithError 上抛出任何错误。然而,视频也没有出现在相册中,我猜它是正确的,因为手机似乎说视频不兼容,无法显示在相册中。同样,我的问题是它确实可以在模拟器上运行,我该如何在实际的 iphone 上解决这个问题,例如为什么它认为视频不兼容?与 mp4 本身有关,还是在下载步骤中与此有关?接下来我该怎么做才能解决这个问题? (ps.我也可以控制mp4文件,你知道iphone上有mp4兼容性列表吗?我想也许文件在手机上不兼容是真的(但在模拟器上!?))

最佳答案

找到了我的问题的答案,我希望它能帮助遇到同样问题的人。事实证明,在将视频存储到画廊时,视频分辨率是模拟器和实际手机之间的因素;具体来说:

兼容性检查 UIVideoAtPathIsCompatibleWithSavedPhotosAlbum 在实际手机上会失败,但在模拟器上会通过,因为示例剪辑捕获为 1080p。幸运的是,我在发帖一周后找到了这个链接。

"What video formats are compatible with the assets library? "

我通过捕获 720p 视频剪辑来进行类似的实验,并且所有文件都能够保存到图库中。奇怪的是,实际的iphone可以播放1080p的HLS流;但是它不会存储剪辑,除非它们是 720p,反正对我来说不是。误导性的一点是模拟器实际上可以做 1080p。

关于objective-c - UIVideoAtPathIsCompatibleWithSavedPhotosAlbum 在 iPhone 上部署时返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22207273/

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