我正在尝试使用 WhatsApp 的 API 共享图像和文本,但无法做到这一点。要分享图像,我有以下代码:
if([[UIApplication sharedApplication] canOpenURL: [NSURL URLWithString:@"whatsapp://app"]])
{
NSURL *documentURL = [[NSFileManager defaultManager] URLForDirectory:NSDocumentDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:NO error:nil];
NSURL *tempFile = [documentURL URLByAppendingPathComponent:@"whatsAppTmp.wai"];
NSData *imageData = UIImageJPEGRepresentation(imageFinal, 1.0);
[imageData writeToURL:tempFile options:NSDataWritingAtomic error:nil];
documentController = [UIDocumentInteractionController interactionControllerWithURL:tempFile];
documentController.UTI = @"net.whatsapp.image";
documentController.delegate = self;
[documentController presentOpenInMenuFromRect:self.view.frame inView:self.view animated:YES];
}
这工作正常,但我找不到与该图像共享文本的方法。我找到了如何在 Instagram 中以相同的形式分享文本,就像那样
documentController.annotation = @{@"InstagramCaption": "text"};
但它不能在 WhatsApp 中共享图像,而且我不知道为此必须在字典中使用什么键。我知道在 Android 中这可以通过 Intent 和额外的 EXTRA_TEXT 来完成,所以我想在 iOS 中也是可能的。
有人可以帮助我吗?
您将无法在 Whatsapp 中同时分享文本和图像。
如果你想分享文字,你可以这样做 -
NSString * mymsg = @"this is test message";
NSString * urlString = [NSString stringWithFormat:@"whatsapp://send?text=%@",mymsg];
NSURL * url = [NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
if ([[UIApplication sharedApplication] canOpenURL: url]) {
[[UIApplication sharedApplication] openURL: url];
} else {
//show alert
}