gpt4 book ai didi

iOS5 将图像保存到自定义文件夹,ALAssetsLibrary 失败

转载 作者:行者123 更新时间:2023-12-04 15:25:19 25 4
gpt4 key购买 nike

<><> ----
Aalok 已经回答了这个问题,我只是在等他写下来以便我可以选择它作为正确答案。在那之前,随着他在下面描述的更改,我不得不调用 -- self.library = [[ALAssetsLibrary alloc] init]; - 在每次尝试保存我的图像之前。作为预防措施,我还停止了 AVSession 运行,直到保存后重新启动(使用 [session stopRunning]; 和 [session startRunning];
----- <><>


<><> ----- 编辑 2:您不需要停止并重新启动 AV session ,对此进行了彻底的测试,并且运行良好。 ----- <><>

<><> ----- 编辑 3:在我的设备上彻底测试后,它运行良好,一旦通过审查过程并放在商店中,代码就无法工作。两台相同的设备(2x iPhone 4)运行相同的操作系统,一台使用我的开发版本,一台关闭应用程序,ap store 版本仍然存在错误。暂时放弃这个 ----- <><>

我正在使用此链接中的类别尝试保存到自定义文件夹:

http://www.touch-code-magazine.com/ios5-saving-photos-in-custom-photo-album-category-for-download/

现在它在某些时候有效,但不是全部。在评论中,有人建议以下代码将检测组属性是否为零:

    if ([group valueForProperty:ALAssetsGroupPropertyURL] == nil)
{
NSLog(@”group properties are nil!”);
} else {
[group addAsset:asset];
}

我有,它确实检测属性是否为零。所以一切都很好。那时我正在努力设置属性并保存图像。我猜此时我们可以手动设置albumName并保存图像,我已经尝试过,但仍然出现错误。

有任何想法吗?谢谢你。

最佳答案

我在使用相同的 .h 和 .m 文件时遇到了同样的问题,但是在研究了 2 到 3 天后找到了一个解决方案,解决方案非常简单,我必须更改的是 .m 文件中的
-(void)saveImage:(UIImage*)image toAlbum:(NSString*)albumName withCompletionBlock:(SaveImageCompletion)completionBlock
并在
-(void)addAssetURL:(NSURL*)assetURL toAlbum:(NSString*)albumName withCompletionBlock:(SaveImageCompletion)completionBlock
方法我只是在调用内部方法之前添加这个

//THE CHANGE dispatch_async(dispatch_get_main_queue(),^{ //
[self writeImageToSavedPhotosAlbum:image.CGImage orientation:(ALAssetOrientation)image.imageOrientation completionBlock:^(NSURL* assetURL, NSError* error)
{
//error handling
if (error!=nil)
{
completionBlock(error);
return;
}
//add the asset to the custom photo album
[self addAssetURL: assetURL toAlbum:albumName withCompletionBlock:completionBlock];
}];
//THE CHANGE }); //

和另一个相同

快乐编码:)

编辑

在第二种方法中,我在每个 completionBlock(nil); 下面添加一行线
[[NSNotificationCenter defaultCenter] postNotificationName:kSaveSuccess object:nil];

我使用此通知来确保图像也保存在相册中。直到那时我显示 UIActivityIndicator带有一些文本消息,成功保存图像后,会显示一条弹出消息,表明图像已保存在带有相册名称的相册中。而这次用户界面没有响应,即用户除了按下设备的主页按钮之外不能做任何事情:) ;)

快乐编码:)

关于iOS5 将图像保存到自定义文件夹,ALAssetsLibrary 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11208351/

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