2010-12-06 133 views
1

我使用openURL命令发送短信,但它打开Safari, 我可以发送命令,以便它在后台打开?ipad应用程序在后台打开浏览器

即用户没有看到浏览器中打开或它给,并且停留在应用程序的消息,

NSURL *url = [NSURL URLWithString: @"https://smsgw.exetel.com.au/sendsms/api_sms.php?username=xxx&password=xx&mobilenumber=0xxx&message=xxr&sender=mk&messagetype=Text&referencenumber=04"]; 

[[UIApplication sharedApplication] openURL: url]; 

谢谢

+0

没有什么是“xcode应用程序”。 xcode只是一个IDE。 – vikingosegundo 2010-12-06 00:45:23

+0

这听起来像是有点邪恶,如果有可能的话。 – 2010-12-06 00:50:20

回答

5

你不能有Safari浏览器打开一个网址给你在背景中。但是,假如你只是想请求的URL,而忽略什么回来了,你可以尝试:

NSURL *url = [NSURL urlWithString:@"...whatever..."]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url delegate:nil]; 
NSURLConnection *connection = [NSURLConnection connectionWithRequest:request]; 
[connection start]; 
2

你可以做到这一点要创建一个UIWebView应用程式中,并在该实例调用loadRequest:,像这样:

UIWebView *webView = [[UIWebView alloc] init]; 

webView.delegate = self; 

NSURL *url = [NSURL URLWithString: @"https://smsgw.exetel.com.au/sendsms/api_sms.php?username=xxx&password=xx&mobilenumber=0xxx&message=xxr&sender=mk&messagetype=Text&referencenumber=04"]; 
NSUrlRequest *request = [[NSUrlRequest alloc] initWithURL:url]; 
[webView loadRequest:request]; 

这将加载应用程序内的URL,而不会将您发送到Mobile Safari。此方法优于NSUrlConnection的是,如果您在代理类中符合UIWebViewDelegate协议并实施webViewDidFinishLoad:,则可以查看调用是否成功。

相关问题