Приложение для iPad открывает браузер в фоновом режиме - PullRequest
1 голос
/ 06 декабря 2010

Я использую команду openURL для отправки SMS, но он открывает сафари, могу ли я отправить команду, чтобы она открывалась в фоновом режиме ??

то есть пользователь не видит открытия браузера или сообщениячто он дает, и остается в приложении,

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];

Спасибо

Ответы [ 2 ]

5 голосов
/ 06 декабря 2010

В Safari нельзя открывать URL-адрес для вас в фоновом режиме.Но предположим, что вы просто хотите запросить URL и игнорировать все, что возвращается, вы можете попробовать:

NSURL *url = [NSURL urlWithString:@"...whatever..."];
NSURLRequest *request = [NSURLRequest requestWithURL:url delegate:nil];
NSURLConnection *connection = [NSURLConnection connectionWithRequest:request];
[connection start];
2 голосов
/ 06 декабря 2010

Вы можете сделать это, создав 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: в своем классе делегата, вы сможете увидеть, успешно ли выполнен вызов.

...