如何以编程方式打开 WhatsApp 然后返回到我的应用程序?

How to open WhatsApp programmatically and then get back to my app?

在我的应用程序中,我需要通过 WhatsApp 发送链接。所以我就是这样做的:

 NSString* link = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(NULL,
                                                                                   (CFStringRef)resource.shareURL.absoluteString,
                                                                                   NULL,
                                                                                   CFSTR("!*'();:@&=+$,/?%#[]"),
                                                                                   kCFStringEncodingUTF8));

            NSString * urlWhats = [NSString stringWithFormat:@"whatsapp://send?text=%@", link];
            NSURL * whatsappURL = [NSURL URLWithString:urlWhats];

            if ([[UIApplication sharedApplication] canOpenURL: whatsappURL]) {
                [[UIApplication sharedApplication] openURL: whatsappURL];
            } else {
                UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"Unknown error"
                                                                 message:@"Can't open Whatsapp"
                                                                delegate:nil
                                                       cancelButtonTitle:@"OK"
                                                       otherButtonTitles:nil];
                [alert show];
            }

但问题是它不会在消息发送后自动 return 到我的应用程序。用户需要手动返回应用程序。那么如何将它 return 添加到我的应用程序中呢?有可能吗?

这不可能。这个工作的唯一理论上的方法是发送 URI 以供 whatsapp 在其完成处理程序中打开您的应用程序。但是,whatsapp 方案不支持此类功能,因此无法在它发送消息后强制其打开您的应用程序。