Ga *_*chi 6 phonegap-plugins cordova ionic-framework ionic-webview cordova-plugin-ionic-webview
我正在开发 Cordova(~PhoneGap,~Ionic)应用程序,我遵循Apple 指南,并将自动完成属性添加到我的 HTML 登录表单,以询问用户是否要在尝试注册时保存他们的凭据。
在 Android 上,会出现询问用户是否要正确存储其凭据的弹出窗口,我可以在下次尝试登录时选择我存储的凭据。但在 iOS 上并非如此。
我想到的第一件事可能会阻止 webview 为 iOS 关联密码和域,因为我为后者使用了自定义域(例如 iosapp://)。
我无法更改正在使用的自定义域,有没有办法让它提示用户保存他们的凭据?
这个问题可以通过这种方式重现:
<preference name="Hostname" value="somescheme" />到您的 config.xml 为您的应用程序指定一个自定义主机名(默认是 ionic://,我相信也会有同样的问题) window.location.href = 'https://gabriele-sacchi.github.io/pocs/biometric';
Run Code Online (Sandbox Code Playgroud)
无法从 Web 视图触发 iCloud 钥匙串提示。cordova -plugin-ionic-webview使用WKWebViewiOS 上的类,该类似乎不支持 iCloud 钥匙串。它与您设置的自定义应用程序主机名无关。正如共享网络凭证的文档中提到的:“用户在 Safari 中登录网站时通常会将用户名和密码保存在 iCloud 钥匙串中”
这就是为什么对于 iOS,我必须使用 safari 让我的用户从 Web 视图进行身份验证并允许他们保存密码。有一个很棒的 cordova 插件可以用 Safari 打开 webview ( cordova-plugin-safariviewcontroller )。如果您使用 Ionic,该插件还有 Ionic 本机支持:safari-view-controller
我尝试使用 实现您的链接cordova-plugin-safariviewcontroller,并且 iCloud 钥匙串已正确触发。事实上,您需要更改应用程序中的一些逻辑,因为通过使用访问 Web 视图window.location.href=https://your.url仅适用于 Android。您需要检测平台,然后正确重定向用户。
| 归档时间: |
|
| 查看次数: |
380 次 |
| 最近记录: |