我是IOS phonegap的新手。在我的应用程序中,我需要从我的应用程序发送邮件。所以我正在使用" mailto"功能它工作正常,但问题是在发送邮件后,它不会返回到我的应用程序,它只停留在邮件应用程序中。我该如何解决这个问题。
如果我使用以下代码发送邮件而不是" mailto"如何从我的html / javascript链接到" Mainviewcontroller.h"点击按钮。以及如何将参数从javascript / html传递给" Mainviewcontroller.h"类。
NSString *subject = @"Message subject";
NSString *body = @"Message body";
NSString *address = @"test1@akosma.com";
NSString *cc = @"test2@akosma.com";
NSString *path = [NSString stringWithFormat:@"mailto:%@?cc=%@&subject=%@&body=%@", address, cc, subject, body];
NSURL *url = [NSURL URLWithString:[path stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
[[UIApplication sharedApplication] openURL:url];
请提供一些建议或指导我一些很好的教程来解决我的问题。
提前致谢..
答案 0 :(得分:1)
如果不使用Objective C
,则无法从JavaScript
调用UIWebView
方法。
您可以使用UIWebView执行此操作,如下所示:
在您的JavaScript文件中:
...
window.location.href = "doSomething;";
..
编辑:
在MainViewController.m
中,您可以在MainViewController.m's viewDidload
中添加“虚假”的UIWebView,如下所示:
- (void)viewDidLoad{
UIWebView *webView = [UIWebView alloc] init];
webView.hidden = YES;
webView.delegate = self;
[sel.view addSubView:webView];
// Know you should load the JavaScript witch contain the script.
[webView loadHTMLString:...];
}
将MainViewController
符合UIWebViewDelegate
现在位于UIWebViewDelegate
(MainViewController.m
)对象中:
-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
if ([request.URL.absoluteString isEqualToString:doSomething]) {
// Here you can call what you want
return NO;
}
return YES;
}