我想在whatsapp上共享一个URL,但是它不起作用。如果我分享任何文字,都可以正常工作。
这是我的代码。

    NSString *msg = @"https://www.youtube.com/user/kidstvabcd";
    NSString *urlWhats = [NSString stringWithFormat:@"whatsapp://send?text=%@",msg];
    NSURL *whatsappURL = [NSURL URLWithString:[urlWhats    stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
    if ([[UIApplication sharedApplication] canOpenURL: whatsappURL])
      {
      [[UIApplication sharedApplication] openURL: whatsappURL];
       }
     else
      {
   UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"WhatsApp not installed."  message:@"Your device has no WhatsApp installed." delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
            [alert show];
       }

谢谢。

最佳答案

 NSString *theTempMessage = @"https://www.youtube.com/user/kidstvabcd";

    theTempMessage = [theTempMessage stringByReplacingOccurrencesOfString:@":" withString:@"%3A"];

    theTempMessage = [theTempMessage stringByReplacingOccurrencesOfString:@"/" withString:@"%2F"];

    theTempMessage = [theTempMessage stringByReplacingOccurrencesOfString:@"?" withString:@"%3F"];

    theTempMessage = [theTempMessage stringByReplacingOccurrencesOfString:@"," withString:@"%2C"];

    theTempMessage = [theTempMessage stringByReplacingOccurrencesOfString:@"=" withString:@"%3D"];

    NSString* theFinalMessage = [theTempMessage stringByReplacingOccurrencesOfString:@"&" withString:@"%26"];

    NSString * stringToSend=theFinalMessage;

    NSURL *whatsappURL = [NSURL URLWithString:stringToSend];

    if ([[UIApplication sharedApplication] canOpenURL: whatsappURL])

    {
        [[UIApplication sharedApplication] openURL: whatsappURL];
    }
    else
    {

       //any alert message
    }

08-17 01:30