2

问题几乎就在标题中;-)

你知道是否有用于从 iPhone 钥匙串读取/写入的 webkit API 吗?也就是说,我需要从 webapp 访问钥匙串。

提前致谢 !

4

2 回答 2

1

我没有关于如何直接从 javascript 执行此操作的答案,并且与 Mac WebView 不同,UIWebView API 不允许您将任意 Objective C 代码公开为 javascript 函数。

但是,您可以使用负载委托具有类似效果的解决方法:

- (BOOL)webView:(UIWebView *)webView
    shouldStartLoadWithRequest:(NSURLRequest *)request
    navigationType:(UIWebViewNavigationType)navigationType
{
    if([[[request URL] scheme] isEqualToString:@"x-your-scheme"])
    {
        // parse the request and call the appropriate objc code here

        [webView stringByEvaluatingJavaScriptFromString:@"send(results);"];
        return NO;
    }

    return YES;
}

您可以通过让您的 JS 代码加载“x-your-scheme://”URL 来触发加载委托。

于 2009-11-28T08:52:58.503 回答
1

不,你不能。钥匙串只能从本机应用程序中获得。如果您在本机应用程序中使用 UIWebView,则可以通过多种方式来桥接,但如果它是一个没有本机组件的真正 Web 应用程序,则这是不可能的。

于 2009-11-28T08:56:44.290 回答