ALAssetsLibrary api(4.0以降で利用可能)に基づくiOSアプリを開発しています。これを使用して、デバイスに保存されているすべての画像とビデオを取得します。これは非常に簡単です。とにかく、iPhone4にiOS4.3.4をインストールするとすぐに、コードが機能しなくなりました。フェッチを呼び出す行は何もしません!コードは次のとおりです(iOS 4.3.3では正常に動作します)。
ALAssetsLibrary *library = [[[ALAssetsLibrary alloc] init] autorelease];
ALAssetsGroupEnumerationResultsBlock assetsEnumerator = ^(ALAsset *result, NSUInteger index, BOOL *stop) {
// handle asset
};
ALAssetsLibraryGroupsEnumerationResultsBlock groupsEnumerator = ^(ALAssetsGroup *group, BOOL *stop) {
// handle group
};
ALAssetsLibraryAccessFailureBlock failHandler = ^(NSError *error) {
// handle error
};
[library enumerateGroupsWithTypes:ALAssetsGroupAll usingBlock:groupsEnumerator failureBlock:failHandler];
enumerateGroupsWithTypes:usingBlock:failureBlock:呼び出されないようです。これは、ブロックが実行されていないためです...エラーは発生しません。なんで?私に何ができる?
ps:「types」引数を変更しようとしましたが、それは問題ではありません!