2017-10-19 55 views
1

我嘗試使用Apple App Thinning功能(可從iOS 9下載),該功能可以根據設備體系結構和功能區分資源。在我的情況下,我想要做的是在應用程序包中使用不同的視頻文件(格式爲.mp4),其中一個用於iPhone,另一個用於使用Xcode .xcassetsData Set的iPad。播放使用NSDataAsset存儲的視頻(Xcode xcassets)

要從.xcassetsData Set蘋果檢索文件提供了NSDataAsset類,但是:因爲AVPlayer需要URL播放視頻和NSDataAsset僅提供使用Data格式的內容,我無法播放視頻。

我想要做的是檢索NSDataAsset.dataURL。可能嗎?

+1

你可以看看https://stackoverflow.com/questions/23644193/can-i-create-an-nsurl-that-refers-to-in-memory-的NSData – notsoux

回答

0

你可以試試:

NSDataAsset *videosDataAsset = [[NSDataAsset alloc] initWithName:@"AssetName"]; 
NSData *data = videosDataAsset.data; 
NSString *filename = @"FileToSaveInto.mp4"; 
NSURL *URL = [[[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject] URLByAppendingPathComponent:filename]; 

if ([data writeToURL:URL atomically:YES]) { 
    // run player 
}