我想在Photos.app
的相册中添加或删除新照片时收到通知。具体在iCloud Photos
。文档建议使用Photos.framework PHPhotoLibrary来获取资源列表并注册观察者。
这就是我所做的,但观察者永远不会被召唤。
@implementation PhotoChangesObserver
- (void)photoLibraryDidChange:(PHChange *)changeInstance {
NSLog(@"%@", __PRETTY_FUNCTION__, changeInstance);
}
@end
[[PHPhotoLibrary sharedPhotoLibrary]registerChangeObserver:[PhotoChangesObserver new]];
PHFetchResult *res = [PHAsset fetchAssetsWithOptions:nil];
NSLog(@"fetchAssetsWithOptions res: %@\n%d"); // 8 results
然后我转到Photos.app
并删除了几张照片并返回我的应用程序以触发另一次获取,实际上我只获得了6个结果。但观察者从未被召唤过。
PHFetchResult *res = [PHAsset fetchAssetsWithOptions:nil];
NSLog(@"fetchAssetsWithOptions res: %@\n%d"); // 6 results after deletion
观察者是应该在这种情况下被调用还是仅用于编辑图片(比如添加过滤器,裁剪等)?
我尝试将其他照片添加到共享相册中。但总数