Как загрузить аудио / видео файлы из Интернета и сохранить в приложении iPhone?

Я разрабатываю приложение для iPhone для музыки. Я хочу дать некоторые параметры пользователю, чтобы они могли прослушивать песню / музыку потоковым потоком или загружать музыку в приложение . Я знаю, как программно передавать потоки аудиофайлов в приложении. Но я не знаю, как загрузить аудиофайлы в приложении и воспроизвести аудио после загрузки. А также пользователь может приостановить загрузку во время загрузки. Можно ли это сделать? Может ли кто-нибудь направить меня и, пожалуйста, поделитесь с нами каким-нибудь образцовым кодом или учебным пособием? У меня есть еще одно сомнение: не могли бы вы помочь мне создать папку внутри приложения? Пожалуйста, помогите мне. Заранее спасибо.

2 Solutions collect form web for “Как загрузить аудио / видео файлы из Интернета и сохранить в приложении iPhone?”

Создание папки

Для каждого приложения у вас есть Documents Folder с Documents Folder . Здесь хранятся все файлы, которые вы используете в своем приложении. Если вы хотите создать больше каталогов здесь, вы бы сделали что-то вроде этого:

 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents folder NSString *dataPath = [documentsDirectory stringByAppendingPathComponent:@"MyNewFolder"]; if (![[NSFileManager defaultManager] fileExistsAtPath:dataPath]) [[NSFileManager defaultManager] createDirectoryAtPath:dataPath withIntermediateDirectories:NO attributes:nil error:&error]; //Create folder if it doesn't already exist 

загрузка

Если вы хотите загрузить аудиофайлы из Интернета, вы хотите посмотреть на асинхронный метод его выполнения. Это означает, что приложение может продолжать делать что-то, пока загрузка происходит в фоновом режиме.

Для этого я рекомендую использовать ASIHTTPREQUEST . Он отлично подходит для выполнения любых запросов на скачивание, предоставляя вам множество опций, таких как приостановка загрузки (по вашему усмотрению).

На веб-сайте имеется большое количество документации по загрузке и хранению файла. Взгляните на раздел « Загрузка файла » на этой странице.

Вы бы просто сделали что-то вроде:

 NSURL *url = [NSURL URLWithString:@"http://www.fileurl.com/example.mp3"]; ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url]; [request setDownloadDestinationPath:[NSString stringWithFormat:@"%@",dataPath]]; //use the path from earlier [request setDelegate:self]; [request startAsynchronous]; 

Затем просто обрабатывайте прогресс и завершение через методы делегатов, которые предлагает ASIHTTPRequest.

Воспроизведение

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

Здесь есть отличный учебник по использованию AVAudioPlayer для воспроизведения звуков. Очень простой пример его использования в вашем случае:

 NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/audiofile.mp3",dataPath]; NSError *error; audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error]; if (audioPlayer == nil) NSLog([error description]); else [audioPlayer play]; 

Да, вы можете загружать аудиофайлы и воспроизводить загруженные файлы через AVAudioPlayer. Я не знаю, как сделать паузу при загрузке, но я загрузил аудио и играл. Вы можете скачать либо запрос ASIHTTP, либо другой.

Вы можете следить за этими ссылками.

  1. http://allseeing-i.com/ASIHTTPRequest/How-to-use#tracking_progress
  2. О файле загрузки с использованием ASIHttpRequest
  • Получите расстояние фокусировки на iPhone
  • Иконка приложения в iTunes Connect отсутствует
  • AFNetworking: Как узнать, использует ли ответ кеш или нет? 304 или 200
  • Как я могу заставить Camera View быстрее открываться?
  • Логика для UITableViewCellAccessoryCheckmark
  • Что вызвало этот журнал сбоев в iPhone?
  • PDF в UIWebView не показывает цифровую подпись
  • 3 взаимосвязанных ползунка
  • Изменение языка оповещения в баннере Push Notification
  • Как ускорить поток TDD с помощью iOS и Objective-C / Xcode
  • Cocoapods Нет такого файла для загрузки Error
  • Interesting Posts

    Ошибки Swift Parse PubNub Mach-O

    iOS 7 UINavigationController Несбалансированные вызовы для перехода к началу / концу отображения для

    Как сообщить приложению, что его работающие тесты Unit в чистом проекте Swift?

    Как достичь анимации UINavigationBar при прокрутке в приложении iOS Music?

    Установите NSDictionary в HTTPBody и отправьте с помощью метода POST

    Предиктивный текстовый ввод словаря API / фреймворк для приложений iOS

    Предварительный просмотр видео AVFoundation темнее, чем собственное приложение для камеры

    Разница между ipa и xcarchive

    Отключение кнопки «Назад» и кнопка «Отмена» в диспетчере просмотра навигации – например, контакты приложения iPhone

    UIImagePickerController в Swift 3

    Как добавить кнопки на панель инструментов в iPad popover?

    удалить объект из NSMutableArray

    tableView: viewForHeaderInSection: значение по умолчанию?

    Является ли Titanium ошибкой? и является ли он одинаково совместимым для разработки приложений iOS как XCode и Objective-c?

    Библиотека привязки MonoTouch – EXC_BAD_ACCESS (SIGSEGV)

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.