我收到以下错误消息:invalid attempt to access <ALAssetPrivate: 0xa4a1ed0> past the lifetime of its owning ALAssetsLibrary
当我尝试创建自定义图像选择器时。
我使用这个APPLE示例来创建这个应用程序。示例 Apple 应用程序运行良好。但是当我将该示例代码复制到我的应用程序时,它会收到上述错误消息。
请有人可以帮助我为什么会出现此错误并ALAssetsGroup
变为空。
我收到以下错误消息:invalid attempt to access <ALAssetPrivate: 0xa4a1ed0> past the lifetime of its owning ALAssetsLibrary
当我尝试创建自定义图像选择器时。
我使用这个APPLE示例来创建这个应用程序。示例 Apple 应用程序运行良好。但是当我将该示例代码复制到我的应用程序时,它会收到上述错误消息。
请有人可以帮助我为什么会出现此错误并ALAssetsGroup
变为空。
我找到了这个问题的答案。问题是我使用的 ALAssetsLibrary 被 ARC 为空。解决方案是,添加此静态方法而不是 ALAssets Library..
+ (ALAssetsLibrary *)defaultAssetsLibrary {
static dispatch_once_t pred = 0;
static ALAssetsLibrary *library = nil;
dispatch_once(&pred, ^{
library = [[ALAssetsLibrary alloc] init];
});
return library;
}