2012-04-23 459 views
0

如何通過電子郵件發送包含「&」的iphone應用程序的URL。 這是樣品網址如何通過電子郵件發送電子郵件地址

http://www.google.co.in/search?hl=en&safe=active&q=facebook&oq=facebook&aq=f&aqi=&aql=&gs_l=mobile-gws-serp.3...0l0l0l1620716l0l0l0l0l0l0l0l0ll0l0.frgbld.&mvs=0 
+0

因爲與被視爲特殊字符不要忘記釋放CGStringRef目標c,你必須在郵寄之前驗證URL字符串 – Charan 2012-04-23 08:51:26

+0

Thanx Sree的回覆。我應該做哪種驗證? – Nik 2012-04-23 08:54:57

+0

使用字符串編碼方法... – 2012-04-23 08:56:11

回答

0
 CFStringRef escaped = 
     CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, 
               (CFStringRef)theURL, 
               NULL, 
               (CFStringRef)@"!*'();:@&=+$,/?%#[]", 
               kCFStringEncodingUTF8); 

        NSString* useit = (NSString*)escaped; 

0

試試這個:在應用程序中MFMailComposure電子郵件功能

-(void)displayComposerSheet 
{ 
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init]; 
picker.mailComposeDelegate = self; 
[picker setSubject:@"My URL!"]; 

// Set up recipients 
NSArray *toRecipients = [NSArray arrayWithObject:@"[email protected]"]; 
NSString *emailBody = @"http://www.google.co.in/search?hl=en&safe=active&q=facebook&oq=facebook&aq=f&aqi=&aql=&gs_l=mobile-gws-serp.3...0l0l0l1620716l0l0l0l0l0l0l0l0ll0l0.frgbld.&mvs=0"; 
[picker setMessageBody:emailBody isHTML:NO]; 

[self presentModalViewController:picker animated:YES]; 
[picker release]; 
} 

- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error 
{ 
message.hidden = NO; 

switch (result) 
{ 
case MFMailComposeResultCancelled: 
message.text = @" Message canceled"; 
break; 
case MFMailComposeResultSaved: 
message.text = @"Message saved"; 
break; 
case MFMailComposeResultSent: 
message.text = @"Message sent"; 
break; 
case MFMailComposeResultFailed: 
message.text = @"Message failed"; 
break; 
default: 
message.text = @"Message not sent"; 
break; 
} 
[self dismissModalViewControllerAnimated:YES]; 
}