iOS configuración básica de FTP; Leer y escribir Stream

Estoy intentando crear una aplicación iOS 5 con una funcionalidad FTP muy básica y necesito alguna orientación. Se conectará a un dispositivo en una red local y realizará acciones de lectura / escritura con archivos .dat / txt. He realizado algunas búsquedas en los últimos días y he visto varias recomendaciones, pero nada lo suficientemente simple como para poder recoger y modificar rápidamente para mi uso personal.

Mis preguntas son estas:

¿Hay algún tutorial / código de muestra que me pueda recomendar? ¿Con qué marcos y clases debería trabajar para operaciones básicas de lectura / escritura?

Por último, debo mencionar que he dedicado una cantidad considerable de tiempo para analizar el ejemplo SimpleFTPS de Apple, pero el código de muestra muestra avisos de "Error de conexión" y "Error de transmisión abierta" para cada ejemplo, por lo que desconfío un poco de su utilidad.

Perdóname si esto ha sido respondido en otra parte. Todas las publicaciones relacionadas tienen partes de la respuesta que necesito, pero no todo. ¡Gracias de antemano

EDIT para mayor claridad: un ejemplo bien definido o un tutorial paso a paso es lo que realmente me gustaría. Mis propias búsquedas en Google no han resultado nada y necesito desesperadamente alguna orientación aquí.

ACTUALIZAR Publiqué esta pregunta hace mucho tiempo, pero seguí usando el FTPHelper mencionado en la respuesta aceptada. Recientemente limpié el polvo del antiguo proyecto y me di cuenta de que había una pequeña pérdida de memoria en la función de búsqueda de FTPHelper que puede ser un asesino de aplicaciones si se llama repetidamente. Si alguien se topa con esta pregunta y elige usar FTPHelper, asegúrese de agregar la línea CFRelease que se ve en el código a continuación.

- (void) fetch: (NSString *) anItem
{
    if (!self.uname || !self.pword) COMPLAIN_AND_BAIL(@"Please set user name and password first");
    if (!self.urlString) COMPLAIN_AND_BAIL(@"Please set URL string first");

    NSString *ftpRequest = [NSString stringWithFormat:@"%@/%@", self.urlString, [anItem stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
/*  CFShow(ftpRequest); */
    NSString *writepath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
    self.filePath = [writepath stringByAppendingPathComponent:anItem];
    CFURLRef writeURL = CFURLCreateFromFileSystemRepresentation (NULL, (const UInt8 *) [writepath UTF8String], [writepath length], NO); 
    MySimpleDownload((CFStringRef)ftpRequest, writeURL, (CFStringRef) self.uname, (CFStringRef)self.pword);
    CFRelease(writeURL);//ADD THIS LINE TO FIX MEMORY LEAK 
}

Respuestas a la pregunta(4)

Su respuesta a la pregunta