0

ALAssetLibraryを使用してデバイス上のビデオを列挙していますが、デバイス自体で作成されたビデオに対しては問題なく機能します。しかし、iTunesからの同期されたアルバム/イベントの結果として作成されたグループの場合、「ビデオ」アプリの通信ディレクトリにビデオがありますが、ビデオは取得されません。

ビデオを検索し、すべてのグループのアセットとビデオの数をログに記録するコード:

//using dispatch_async just to make sure it is called on the main thread

    dispatch_async(dispatch_get_main_queue(),^{

        ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];        

        [library enumerateGroupsWithTypes:ALAssetsGroupEvent|ALAssetsGroupLibrary usingBlock:^(ALAssetsGroup *group, BOOL *stop) {        

            if (group!=nil) {            

                NSLog(@"Number of assets in %@ :%d",[group valueForProperty:ALAssetsGroupPropertyName],[group numberOfAssets]);

                [group setAssetsFilter:[ALAssetsFilter allVideos]];        

                NSLog(@"Number of videos in %@ :%d",[group valueForProperty:ALAssetsGroupPropertyName],[group numberOfAssets]);

            }


        } failureBlock: ^(NSError *error) {

            NSLog(@"ERROR: %@",[error localizedDescription]);

        }]; 

    });

何が問題なのか分かりますか?または、iTunesから同期されたビデオを取得する方法は?(iOS5とiPhone4)

4

1 に答える 1

1

AssetsLibrary は Photo-Library のみを列挙します。したがって、「写真」アプリによって管理されている写真/ビデオのみを取得します (例: デバイスのカメラで記録されたビデオ)。「動画」アプリで管理している動画は、別のライブラリにあります。公式の開発者 API でこれらにアクセスする方法はありません。

乾杯、

ヘンドリック

于 2011-11-05T21:47:17.520 に答える