MFMailComposeViewController descarta de inmediato

La situación es la MFMailComposeViewController iba a ser presentado. Lo vi fue presentado a medio camino hecho, pero luego fueron despedidos.

Este es el error:

_serviceViewControllerReady:error: Error de Dominio=_UIViewServiceInterfaceErrorDomain Código=3 «La operación no pudo ser completado. (_UIViewServiceInterfaceErrorDomain error 3.)»

Este es mi código fuente para presentar el MFMailComposeViewController:

-(void) MailExecute {
    if ([MFMailComposeViewController canSendMail]) 
    {
        MFMailComposeViewController *mailViewController = [[MFMailComposeViewController alloc] init];   
        mailViewController.mailComposeDelegate = self;
        [mailViewController setSubject:NSLocalizedString(@"Check this new look", @"")];
        [mailViewController setMessageBody: @"my new look" isHTML:YES];

        [self presentModalViewController:mailViewController animated:YES];

        [mailViewController release];
    }
    else 
    {
        UIAlertView *alertInternal = [[UIAlertView alloc]
                                      initWithTitle: NSLocalizedString(@"Notification", @"")
                                      message: NSLocalizedString(@"You have not configured your e-mail client.", @"")
                                      delegate: nil
                                      cancelButtonTitle:NSLocalizedString(@"OK", @"")
                                      otherButtonTitles:nil];
        [alertInternal show];
        [alertInternal release];
    }
}

El extraño punto es que a veces sucede, a veces no.
Por favor, que me ayude en esto! Me paso casi 1 día de trabajo para resolver esto, pero sin éxito.

  • usted va esta excepción, mientras que su aplicación en el Dispositivo o en el Simulador?
  • Probablemente no relacionadas con mailComposeView, pero UIView en general: tiene error similar nota con quickLook. Todavía depuración…
  • Hola JOM, te diste cuenta de nada nuevo sobre este error?
  • Ha añadido el MessageUI.marco?
  • Puede usted por favor muestre su MFMailComposeViewController los métodos de delegado?
  • Suponiendo una respuesta resuelto este o de encontrar una solución, se puede aceptar o enter para cerrar la pregunta abierta?
  • Hola, me preguntaba si se las arregló para resolver esto. Estoy teniendo este problema también, pero sólo es en algunas circunstancias y no puedo reproducirlo!
  • Me encontré con el mismo mensaje de error con QuickLook, y el problema era que yo estaba cargando un PDF con un ancho de 1300+ píxeles. Cuando he girado el pdf, de modo que su ancho de ~700px, funcionó bien.

InformationsquelleAutor Truong | 2012-12-04

9 Kommentare

  1. 2

    Su código es correcto, y como se dijo en el mensaje de error sugiere fuertemente que esto tiene algo que ver con UIView adecuada (no MFMail específicamente). El problema casi seguro que está en algún otro lugar dentro de su código, y puede ser difícil de solucionar problemas.

    Algunas cosas a tener en cuenta:

    1. Otras animaciones o controlador de vista de transiciones de despidos sucediendo simultáneamente o de forma incorrecta (posiblemente como este)
    2. Release/retener a los problemas, por supuesto

    Si nada de esto parece la solución, intente comentar-todo lo demás que ocurre en el controlador de vista que se llama a este método y ver si funciona, a continuación,.

    Si usted todavía no puede conseguir trabajo, presentar la versión más sencilla puede fracasar código para que podamos solucionar aún más. 🙂

    • Gracias por tu ayuda. Mi supervisor era tomar la vuelta. Así que no revise nada más.
  2. 3

    Este problema puede producirse cuando se muestra una vista remota del controlador — un controlador de vista de ejecutar en otro proceso-como se indica por la UIViewService referencia en el mensaje de error.

    He tenido este problema al mostrar un SKStoreProductViewController, que también es un remoto controlador de vista. No estoy seguro de cuál es la causa raíz es; lo único que parecía que los activa, para mí, fue la presentación de la vista controlador en repetidas ocasiones.

    Para la SKStoreProductViewController pude comprobar por este error en el bloque de finalización de la loadProductWithParameters:completionBlock: método. ¿El MFMailComposeViewControllerDelegate darle una devolución de llamada con un error acerca de esto? Puede ser que todo lo que puede hacer es escuchar de este error y mostrar un mensaje de error al usuario.

    Ambos deben probablemente archivo de una manzana de radar sobre esto.

  3. 0

    ¿Tienes algo en tu viewDidDisappear: o viewWillDisappear métodos que despedir a un controlador de vista?

    Si no, se puede publicar más de su código para el ViewController que presenta el MFMailComposeViewController?

    • Estoy bastante seguro de que no hay nada de malo con viewDidDisappear o viewWillDisappear. Pero no voy a investigar más, así que gracias por tu ayuda.
    • No estoy investigando este error nunca más. Gracias por tu ayuda.
  4. 0

    Sé que esto es la respuesta tardía, pero puede ser de ayuda para algunas otras.

    Sólo ahora se enfrentan al mismo problema, Por resetting the simulator funciona bien para mí, por este mismo problema. Déjame saber si esto le ayuda.

  5. 0

    Después de que almacena la MFMailComposeViewController en una fuerte propiedad de mi clase en lugar de una variable local no podía reproducir el auto desestimando el comportamiento más.

    • Puede que desee etiquetar esta pregunta. Es la pregunta relativa a la programación en iOS?
  6. 0

    El problema, para mí fue una incorrecta argumento al llamar a la fijación de función. Si usted está teniendo este problema con un archivo adjunto de correo electrónico sugiero la siguiente solución se encuentra en este hilo, de la siguiente manera:

    NSString *path = [self getDatabaseFilePath];
    NSData *myData = [NSData dataWithContentsOfFile:path];
    [picker addAttachmentData:myData mimeType:@"application/x-sqlite3" fileName:[path lastPathComponent]];
  7. 0

    MFMailComposeViewController *mailComposer = [[MFMailComposeViewController alloc]init];

    if ([MFMailComposeViewController canSendMail])
    {
        mailComposer.mailComposeDelegate = self;
        [mailComposer setToRecipients:[NSArray arrayWithObject:@"[email protected]"] ];
        [mailComposer setSubject:@"Kapsie App Contact Support"];
        [mailComposer setMessageBody:@"Type Your Feedback message here" isHTML:NO];
        [self presentViewController:mailComposer animated:YES completion:nil];
    }

    Uso de código de arriba y comprobar que en el dispositivo.

  8. -1

    Uso de modelViewController está en desuso en iOS 6 ,
    uso

    [self presentViewController:mailView animated:YES completion:nil];
    • De esta manera no ayuda.
  9. -1

    Tengo el mismo problema y la solución fue:

    Puedo eliminar la aplicación general aspecto relacionado con código como

    [[UILabel appearance]setText:@""] 

    y reemplazar con el código

    [[UILabel appearanceWhenContainedIn:[self class], nil] setText:@""];

    Ahora se está trabajando bien, hay que tener cuidado en general de la aplicación de la aparición de cambios: puede ser navigationbar apariencia, así y así

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea