videos para mas guardar descargar como app amerigo iphone ios download audio-streaming audio-player

para - ¿Cómo descargar archivos de audio/video de Internet y almacenarlos en la aplicación de iPhone?



itunes (2)

Estoy desarrollando una aplicación de iPhone para música. Quiero dar algunas opciones al usuario para que puedan escuchar la canción / música en streaming o pueden descargar la música en la aplicación . Sé cómo transmitir los archivos de audio en la aplicación mediante programación. Pero, no sé cómo descargar los archivos de audio en la aplicación y reproducir el audio después de la descarga. Y también el usuario puede pausar la descarga mientras está en descarga. Es posible de hacer ? ¿Alguien puede guiarme y compartir algún código de muestra o tutorial? Tengo una duda más: ¿Me pueden ayudar a crear una carpeta dentro de la aplicación? Por favor, ayúdame. Gracias por adelantado.



Creando una carpeta

Para cada aplicación tienes una Documents Folder . Todos los archivos que utiliza en su aplicación se almacenan aquí. Si quieres crear más directorios aquí, entonces harías algo como esto:

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

Descargando

Si desea descargar archivos de audio de Internet, entonces desea ver un método asíncrono de hacerlo. Esto significa que la aplicación puede seguir haciendo cosas mientras la descarga se realiza en segundo plano.

Para esto, te recomiendo que uses ASIHTTPREQUEST . Es ideal para realizar cualquier solicitud de descarga, ya que le brinda muchas opciones, como detener una descarga (según lo solicite).

El sitio web proporciona una gran cantidad de documentación sobre la descarga y el almacenamiento de un archivo. Eche un vistazo a la sección Descargar un archivo en this página.

Solo harías algo como:

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];

Luego solo maneje el progreso y la finalización a través de los métodos de delegado que ofrece ASIHTTPRequest.

Jugando

Reproducir el archivo es muy simple. Una vez que esté en el dispositivo y sepa dónde está, simplemente cárguelo en el reproductor de audio.

Aquí hay un gran tutorial sobre AVAudioPlayer usar AVAudioPlayer para reproducir sonidos. Un ejemplo muy simple de usarlo en tu caso sería:

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];