Nabend zusammen.
Ich habe letzte Woche in einer App den Versand von Screenshots per Whats App eingebaut. Das ging völlig problemlos und funktioniert einwandfrei.
Das gleiche Feature wollte ich heute in eine ältere App einbauen aber sobald mir der UIDocumentInteractionController die Bestätigungsabfrage 'In WhatsApp öffnen' anzeigt und ich per Touch auf das Icon bestätige stürtzt die App ab.
Hier mal mein Code:
Alles anzeigen
Der Screenshot-Helper funktioniert einwandfrei, damit versende ich auch Screenshots per Email oder poste diese auf Facebook und Twitter. Kein Objekt ist Nil und bis zum bestätigen des Öffnens von WhatsApp gibt es keine Probleme.
Hat jemand eine Idee wo der Fehler liegen könnte?
Hier der Crash-Bericht, falls es hilft :):
Was mir noch aufgefallen ist, wenn ich anstatt 'WhatsApp öffnen' bestätige den Vorgang abbreche friert die App ein. Irgendwie seltsam das Ganze.
Keine Fehlermeldung, kein Crash aber die App reagierte dann nicht mehr auf Berührung obwohl ein Timer im Hintergrund weiterläuft.
Ich habe letzte Woche in einer App den Versand von Screenshots per Whats App eingebaut. Das ging völlig problemlos und funktioniert einwandfrei.
Das gleiche Feature wollte ich heute in eine ältere App einbauen aber sobald mir der UIDocumentInteractionController die Bestätigungsabfrage 'In WhatsApp öffnen' anzeigt und ich per Touch auf das Icon bestätige stürtzt die App ab.
Hier mal mein Code:
PHP-Quellcode
- - (void)SendViaWhatsApp
- {
- NSURL *whatsappURL = [NSURL URLWithString:@"whatsapp://app"];
- if ([[UIApplication sharedApplication] canOpenURL: whatsappURL])
- {
- UIImage *iconImage = [ScreenshotHelper captureView:self.view];
- NSString *savePath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/whatsAppTmp.wai"];
- [UIImageJPEGRepresentation(iconImage, 1.0) writeToFile:savePath atomically:YES];
- documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:savePath]];
- documentInteractionController.UTI = @"net.whatsapp.image";
- documentInteractionController.delegate = self;
- [documentInteractionController presentOpenInMenuFromRect:CGRectMake(0, 0, 0, 0) inView:self.view animated: YES];
- // Das öffnen per [UIApplication sharedApplication] openURL:xyz] funktioniert einwandfrei
- // [[UIApplication sharedApplication] openURL: [NSURL URLWithString:@"whatsapp://send?text=Hello%2C%20World!"]];
- }
- }
- - (UIDocumentInteractionController *) setupControllerWithURL: (NSURL*) fileURL
- usingDelegate: (id <UIDocumentInteractionControllerDelegate>) interactionDelegate {
- UIDocumentInteractionController *interactionController =
- [UIDocumentInteractionController interactionControllerWithURL: fileURL];
- interactionController.delegate = interactionDelegate;
- return interactionController;
- }
Der Screenshot-Helper funktioniert einwandfrei, damit versende ich auch Screenshots per Email oder poste diese auf Facebook und Twitter. Kein Objekt ist Nil und bis zum bestätigen des Öffnens von WhatsApp gibt es keine Probleme.
Hat jemand eine Idee wo der Fehler liegen könnte?
Hier der Crash-Bericht, falls es hilft :):
libobjc.A.dylib`objc_msgSend:
0x39c5c5a0: teq.w r0, #0
0x39c5c5a4: beq 0x39c5c5e6 ; objc_msgSend + 70
0x39c5c5a6: push.w {r3, r4}
0x39c5c5aa: ldr r4, [r0]
0x39c5c5ac: lsr.w r9, r1, #2
0x39c5c5b0: ldr r3, [r4, #8] < Thread 1: EXC_BAD_ACCESS (code=1, address=0x8)
Was mir noch aufgefallen ist, wenn ich anstatt 'WhatsApp öffnen' bestätige den Vorgang abbreche friert die App ein. Irgendwie seltsam das Ganze.
Keine Fehlermeldung, kein Crash aber die App reagierte dann nicht mehr auf Berührung obwohl ein Timer im Hintergrund weiterläuft.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von gyrosp ()