Apple 是否允许在 App Store 中使用 JavaScript 上下文?

Does Apple Allow to use JavaScript context in App Store?

我正在做一个项目,其中 UIWebView 我需要在这个 UIWebView 和那个特定 [=15= 的网页上调用一些 JavaScripts ] 将调用我的 Objective-C native 方法。

为此,我从 UIWebView 获取 context 并将我的 Objective-C 对象设置为 context 并且我在 JavaScript 和在 JavaScript 中,对象我用这个 function/method.

调用一个 Objective-c

这是我在上面使用的代码,

JSContext *context = nil;
    context = [_webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];

// enable error logging
[context setExceptionHandler:^(JSContext *context, JSValue *value) {
    NSLog(@"WEB JS: %@", value);
}];

context[@"MyObj"] = self;

所以我的简单问题是,就 Apple Store 而言,这种方式是否可行。我的意思是,有没有什么东西会导致我的应用程序被 Apple for App Store 拒绝?

谢谢。

App Store 指南中目前没有任何内容会禁止您打算执行的操作。

从网络服务器启动功能的能力,即使是通过网络视图中的 JavaScript,也是常见的行为。

您的应用 运行 在沙盒中,因此任何安全问题都仅限于您的应用。您没有向您的应用添加代码,这是被严格禁止的。您只是简单地包含了稍后可能调用的功能。

简短的回答是,这取决于谁对您的应用进行评论。

我有一些应用程序做的事情非常相似,而且它们顺利通过了批准。我有其他应用程序因做同样的事情而被拒绝,因为 JavaScript 被认为是 "downloaded executable code"。

为了回答您的具体问题,我不相信您在 Objective-C 代码中所做的事情会导致 Apple 的审查出现问题,但根据 JavaScript 的来源,这可能.

最重要的是,Apple 的审查指南仍然由 Apple 的人员解释,而且这种解释并不完全一致。