2012-03-09 4 views
1

Я разрабатываю приложение iPad &, которое сейчас тестирует его на самом устройстве. Я использую базу данных sqlite для чтения в URL-адресах файлов фильмов .m4v.Ссылка на файлы в приложении iPad

Для тестирования с помощью имитатора I Список адресов в базе данных следующим образом:

/Users/Octave1/Desktop/iDev/Moodymann/IMM Simulator App/Content/Movies/visuals seg0.m4v 
. 
. 
. 

Это прекрасно работает & база данных правильно читать, & файлы играть, как требуется.

При запуске приложения на IPad я изменить URL'ы в базе данных в следующем формате:

/Content/Movies/visuals seg0.m4v 
. 
. 
. 

Однако фильм не играет вообще. Похоже, что существует проблема с путём &, что файлы не найдены - кто-нибудь знает правильный способ ссылки на файлы в пределах самого приложения?

Заранее спасибо :)

ответ

0

Я понял это, для тех, кто с такой же проблемой.

Прежде всего - я скопировал мое «Содержимое» папку над к IPAD, помещая его в каталоге библиотеки, следующим образом:

//Finding out where the Library Directory is located 
NSString *libraryDirectory = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) objectAtIndex:0]; 
//Find where my content folder is initially 
NSString *contentPath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"Content"]; 

NSError *error = nil; 

[[NSFileManager defaultManager] copyItemAtPath:contentPath 
             toPath:libraryDirectory 
             error:&error]; 

if([[NSFileManager defaultManager] copyItemAtPath:contentPath toPath:folderPath error:&error]){ 
    NSLog(@"File successfully copied"); 
} else { 
    NSLog(@"Error description-%@ \n", [error localizedDescription]); 
    NSLog(@"Error reason-%@", [error localizedFailureReason]); 
} 

Я зачитал адрес каждого фильма, & Append каждый адрес, адрес libarary

NSString *inFilePath = movieObj.pathToMovie; ///Content/Movies/visuals seg0.m4v from above 
NSLog(@"inFilePath is: %@", inFilePath); 
NSString *fullPath = [libraryDir stringByAppendingPathComponent:[[NSString alloc] initWithString:inFilePath]];     
NSLog(@"fullPath is: %@", fullPath); 

      NSURL *url = [[NSURL alloc] initFileURLWithPath:fullPath];  
      NSLog(@"url is: %@", url); 
      [movieUrlArray addObject:url]; 

Теперь я знаю, что URLs файлов фильмов, в файловой системе приложения.

Смежные вопросы