我正在使用以下代码从iOS应用程序在WhatsApp上共享文本。

        NSString *textToSend = [NSString stringWithFormat:@"whatsapp://send?text=%@", self.theTextView.text];
        NSURL *whatsappURL = [NSURL URLWithString:textToSend];

        if ([[UIApplication sharedApplication] canOpenURL: whatsappURL]) {
            [[UIApplication sharedApplication] openURL: whatsappURL];
        }else{
            [[[UIAlertView alloc] initWithTitle:nil message:@"Whatsapp not isntalled on this device! Please install first." delegate:nil cancelButtonTitle:@"Okay" otherButtonTitles:nil, nil]show];
        }

这无法正常工作。

如果我喜欢解释的here,则可以正常工作。
        NSURL *whatsappURL = [NSURL URLWithString:@"whatsapp://send?text=Hello%2C%20World!"];

最佳答案

我敢打赌 self.theTextView.text 没有得到URL编码。

如何解决:

string = [string stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

假设您使用的是UTF8。

09-11 20:28