2012-12-31 43 views
1

我从我的应用程序发送一些数据到服务器。如下图所示如何从设备获取发件人电子邮件?

-(void)createXML 
{ 
xmlStr = @"<?xml version='1.0'?>\n<jand_req>\n<inquiryList>\n<productArr>\n"; 
NSString *nameStr=[NSString stringWithFormat:@"<name>%@</name>\n",name.text]; 
xmlStr=[xmlStr stringByAppendingString:nameStr]; 
NSString *compNameStr=[NSString stringWithFormat:@"<comp_name>%@</comp_name>\n",compName.text]; 
xmlStr=[xmlStr stringByAppendingString:compNameStr]; 
NSString *cityStr=[NSString stringWithFormat:@"<city>%@</city>\n",city.text]; 
xmlStr=[xmlStr stringByAppendingString:cityStr]; 
NSString *countryStr=[NSString stringWithFormat:@"<country>%@</country>\n",[nameToCode objectForKey:country.text]]; 
xmlStr=[xmlStr stringByAppendingString:countryStr]; 
NSString *commentsStr=[NSString stringWithFormat:@"<comment>%@</comment>\n",commentsBox.text]; 
xmlStr=[xmlStr stringByAppendingString:commentsStr]; 
xmlStr=[xmlStr stringByAppendingString:@"</userDetail>\n</inquiryList>\n</jand_req>"]; 
} 

我的代码,在这之后我的数据由不同领域的我上面的数据发送到服务器如下图所示

- (void)submitForm 
{ 
[self createXML]; 

NSLog(@"myaccesscode%@",[fn getValFromSettings:@"accessCode"]); 
    NSString *serviceUrlStr=[NSString stringWithFormat:@"%@/%@/API_sendmail.php?access_code=%@",domainName,apiFolderPath,[fn getValFromSettings:@"accessCode"]]; 
    NSLog(@"%@",serviceUrlStr); 
    NSURL * serviceUrl = [NSURL URLWithString:[serviceUrlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 
    NSMutableURLRequest * serviceRequest = [NSMutableURLRequest requestWithURL:serviceUrl cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData timeoutInterval:100]; 
    [serviceRequest setValue:@"text/xml" forHTTPHeaderField:@"Content-type"]; 
    [serviceRequest setHTTPMethod:@"POST"]; 
    [serviceRequest setHTTPBody:[xmlStr dataUsingEncoding:NSUTF8StringEncoding]]; 
    NSURLConnection *conn=[[[NSURLConnection alloc] initWithRequest:serviceRequest delegate:self startImmediately:YES] autorelease]; 
} 

所有上面的代码我的代码为我工作正常,但现在我希望在此代码中包含另一个功能其中包含发件人电子邮件地址,但此发件人电子邮件必须从设备中获取,与在应用程序中使用MFMailComposeViewController时相同,然后自动获取发件人来自Device.Email的发件人电子邮件地址。将受到感谢。

回答

0
#import <AddressBook/AddressBook.h> 

NSString *emailAddr = @""; 
ABPerson *aPerson = [[ABAddressBook sharedAddressBook] me]; 
ABMultiValue *emails = [aPerson valueForProperty:kABEmailProperty]; 
if([emails count] > 0) 
    emailAddr = [emails valueAtIndex:0]; 

不要忘记添加AddressBook.framework。

现在,emailAddr包含发件人电子邮件,您可以附加到您的xml字符串或任何你想要的地方!

-(void)createXML 
{ 
    // Your code 
    NSString *emailStr=[NSString stringWithFormat:@"<email>%@</email>\n",emailAddr]; 
    xmlStr=[xmlStr stringByAppendingString:emailStr]; 
} 

快乐编码!

+0

感谢您的快速响应,但我们在向服务器发送数据时如何将其添加到xmlStr中。 – NSCool

+0

@NSCool你可以在任何你想使用它的地方使用emailAddr!请看我最新的答案来看看! –

+0

oky它看起来不错只有最后一件事情告诉我使用这个代码,如果有任何答复来自服务器然后它去哪里?我希望回复必须发送到发件人的电子邮件地址。 – NSCool

相关问题