2014-03-02 48 views
0

我有一個視頻文件存儲在tmp目錄中,url有效,並且視頻有效。 的問題是,我在resultBlock得到空值,無論我通過什麼網址。assetForURL總是將資產歸還爲空

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

[al assetForURL:url resultBlock:^(ALAsset *asset) { 
    NSLog(@"%@", asset); //asset is null/nil 
} failureBlock:^(NSError *error) { 
    NSLog(@"Failed creating asset from url with error: %@", [error description]); 
}]; 

回答

1

如果您的視頻是在tmp目錄那麼它是不是與ALAssetsLibrary和你相關的資產商店需要使用標準的文件加載API(如NSFileManager/NSData dataWithContentsOfURL:...訪問視頻數據。

如果你想要的視頻由ALAssetsLibrary進行管理,你需要調用writeVideoAtPathToSavedPhotosAlbum:completionBlock:導入的視頻,當時的completionBlock將爲您提供與資產庫URL(assetURL),可用於稍後檢索視頻(從ALAssetsLibrary)。

+0

是的,但然後視頻將被存儲在cameraRoll,這對我來說是不想要的結果。我想我需要考慮如何解決這個問題... 謝謝。 – shaloms