Posso accedere al portachiavi da una webapp (javascript) sull'iPhone?
-
05-07-2019 - |
Domanda
La domanda è praticamente nel titolo ;-)
Sai se esiste un'API webkit per leggere / scrivere dal portachiavi di iPhone? Cioè, avrei bisogno di accedere al portachiavi da una webapp.
Grazie in anticipo!
Soluzione
No, non puoi. Il portachiavi è disponibile solo dalle app native. Se stai usando un UIWebView all'interno di un'app nativa ci sono modi per colmare le cose, ma se si tratta di una vera app web senza componente nativo non è possibile.
Altri suggerimenti
Non ho una risposta su come eseguire questa operazione direttamente da JavaScript e, diversamente dal Mac WebView, l'API UIWebView non consente di esporre codice arbitrario dell'Obiettivo C come funzioni javascript.
Tuttavia puoi usare una soluzione alternativa che ha un effetto simile usando il delegato di caricamento:
- (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;
}
Attivi il delegato del caricamento facendo caricare il tuo codice JS a " x-your-schema: // " URL.