Webview使用onReceivedSslError方法,apk被Google play rejected
2017-01-17 11:54
731 查看
下面是在Google Play上发布项目时,Google play rejected发送过来的原因。
其实google已经给出了解决方案,我们只是要实现以下而已。
下面是stackoverflow别人的解决方法。
Webview avoid security alert from google play upon implementation of onReceivedSslError
Webview的使用
**如何处理应用中的 WebView SSL 错误处理程序提醒** 本文面向的是在应用中采用的 WebViewClient.onReceivedSslError 处理程序实施方式不安全的开发者。具体来说,这种实施方式会忽略所有 SSL 证书验证错误,使应用容易受到中间人攻击。攻击者可能会更改受影响的 WebView 内容、读取传输的数据(例如登录凭据),以及执行应用中使用 JavaScript 的代码。 从 2016 年 11 月 25 日起,Google Play 将禁止发布任何包含此类漏洞的新应用或应用更新。您已发布的 APK 版本不会受到影响,但是,在修复此漏洞前,您将无法为应用发布任何更新。 后续步骤 1. 为了纠正此问题,请将您的应用代码更新为在服务器提供的证书符合您的预期时调用 SslErrorHandler.proceed(),否则调用 SslErrorHandler.cancel()。 2. 如果是您使用的第三方库导致的安全漏洞,请通知该第三方,并与其合作解决此问题。 3. 更改完成后,请登录 Developer Console 并提交应用的更新版本。 4. 过 5 个小时后再回来查看。如果应用未正确更新,系统将会显示相应的警告消息。请注意,即使您的应用已修复相应漏洞,处理过程也可能会有所延迟,这是很常见的情况。 有关 SSL 错误处理程序的详情,请访问 Android 开发者帮助中心查看相关文档。如有其他技术问题,您可以在 https://www.stackoverflow.com/questions 上发帖咨询并使用“android-security”和“SslErrorHandler”标签。 尽管这些具体问题不一定会对使用 WebView SSL 的所有应用都造成影响,但我们仍建议您安装所有最新的安全补丁。如果应用包含会让用户面临入侵风险的安全漏洞,那么我们可能会将其视为危险产品(违反《内容政策》和《开发者分发协议》第 4.4 条的相关规定)。 此外,应用还必须遵循开发者分发协议和内容政策。如果您认为我们发送此警告的判断有误,请通过 Google Play 开发者帮助中心与我们的政策支持团队联系。
其实google已经给出了解决方案,我们只是要实现以下而已。
@Override public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) { final AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setMessage(R.string.notification_error_ssl_cert_invalid); builder.setPositiveButton("continue", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { handler.proceed(); } }); builder.setNegativeButton("cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { handler.cancel(); } }); final AlertDialog dialog = builder.create(); dialog.show(); }
下面是stackoverflow别人的解决方法。
Webview avoid security alert from google play upon implementation of onReceivedSslError
Webview的使用
相关文章推荐
- Google play WebViewClient.onReceivedSslError
- Android Webview的使用中,onPageFinished方法和onReceivedError方法,onPageFinished在4.4版本会被多次执行的问题
- Android WebView访问SSL证书网页(onReceivedSslError)
- Android WebView onReceivedTitle 方法不被调用的问题
- [Android] 获取WebView的页面标题(Title)-----WebChromeClient.onReceivedTitle()方法的重写
- webview onReceivedError 接收不到404
- 【Android基础】获取WebView的页面标题(Title)-----WebChromeClient.onReceivedTitle()方法的重写
- 使用webView访问https的url-处理SslError解决android2.2版本之前的https请求问题
- webview onReceivedError 接收不到404
- [Android] 获取WebView的页面标题(Title)-----WebChromeClient.onReceivedTitle()方法的重写
- WebView调用了onReceivedError之后,还是调用onPageFinished。
- 使用WebView访问https的url——处理SslError,如何支持2.2版本以下的平台
- Android使用WebView加载图片防止OutOfMemoryError
- 在本地UI使用webview,在html页面用js与android通信方法。
- QML使用WebView遇到的QSslSocket问题解决
- android开发之android webView使用方法
- android开发android webView 使用方法
- [置顶] Android使用WebView加载图片防止OutOfMemoryError
- Android WebView的简单使用方法
- android webView 使用方法