javascript - 如何将一个变量从javascript传递到 Objective C 和 Objective C 到 Javasctipt

  显示原文与译文双语对照的内容
50 2

我是一位iOS开发人员,我是javascript新手。

我想在Javascript到 Objective C 和 Objective C 之间创建一个通信到 Javascript 。

如何在ios中将一个变量从javascript传递到 Objective C,Objective C 传递到 Javasctipt 。

如果有任何人有参考,请告知我们?

时间:原作者:0个回答

115 1

使用解析CloudCode时程序的JavaScript 。在我的例子中,我使用CloudCode调用 Stripe API 。

例如:

objective-c

NSDictionary *parameters = @{
 @"customerId": stripeCustomerId,
 @"amount": @(100), 
 };
[PFCloud callFunctionInBackground:@"chargeCustomer" withParameters:parameters block:block];

Javascript

Parse.Cloud.define("chargeCustomer", function(request, response) {
 Stripe.Charges.create({
 amount: request.params.amount,//in cents
 currency:"usd",
 customer: request.params.customerId,
 },{
 success: function (httpResponse) {
 console.log(httpResponse);
 response.success(httpResponse);
 },
 error: function (httpResponse) {
 console.error(httpResponse.message);
 response.error(httpResponse.message);
 }
 });
});

可以看到,在本例中,将变量从 objective-c 传递到javascript时,使用 request.params 。

原作者:
92 3

如果目标是 iOS8,那么可以考虑使用 WKWebView 而不是 UIWebView,这在这方面有很大改进。好的起点是 WKWebView 参考文档和这个 NSHipster文章。

原作者:
128 5

你可以使用本机iOS对象来执行这里操作。

从 Obj-C 到 JS

- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script

它注入或者调用在UIWebview加载的页面中的预先存在的方法/对象。它返回JS返回给你的值

UIWebView类引用

从JS到 Obj-C 英镑

实现 UIWebView 协议,你可以在启动请求之前处理请求:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest (NSURLRequest *)request navigationType (UIWebViewNavigationType)navigationType

从JS中,你必须调用一个带有定制模式 http ( 如 test:// )的URL 。然后,你将在我之前编写的委托方法中解析请求。

原作者:
...