這個問題在標題中非常多;-)我可以通過iPhone上的webapp(javascript)訪問鑰匙串嗎?
您是否知道是否有用於從iPhone鑰匙串讀取/寫入的webkit API?也就是說,我需要從webapp訪問鑰匙串。
在此先感謝!
這個問題在標題中非常多;-)我可以通過iPhone上的webapp(javascript)訪問鑰匙串嗎?
您是否知道是否有用於從iPhone鑰匙串讀取/寫入的webkit API?也就是說,我需要從webapp訪問鑰匙串。
在此先感謝!
不,你不能。鑰匙串只適用於本地應用程序。如果您在本地應用程序中使用UIWebView,則可以採用橋接方式,但如果它是真正的沒有本地組件的Web應用程序,則不可能。
我沒有關於如何直接從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-您的方案://」網址。