Android: 无法从 WebView Print/PDF html 文档(版本:86.0.4240.75)

Android: Unable to Print/PDF html document from WebView (version: 86.0.4240.75)

// Get a PrintManager instance
PrintManager printManager = (PrintManager) getSystemService(Context.PRINT_SERVICE);

// Get a print adapter instance
PrintDocumentAdapter printAdapter = webView.createPrintDocumentAdapter();

// Create a print job with name and adapter instance
String jobName = getString(R.string.app_name) + " Document";
PrintAttributes.Builder builder = new PrintAttributes.Builder();
builder.setMediaSize(PrintAttributes.MediaSize.ISO_A4);
PrintJob printJob = printManager.print(jobName, printAdapter, builder.build());

错误消息:“抱歉,这没有用。再试一次。”

随着 Android System WebView(版本:86.0.4240.75)的最新更新,无法从我的 html 文档的 webview 使用 createPrintDocumentAdapter 生成 pdf 或打印。使用旧版本的 Android System Webview,效果很好。

如果有人对此有解决方案,请告诉我们?

我们的 Cordova 应用程序遇到了同样的问题。我们对 Cordova 使用 pdf-generator 2.1.1。应用程序启动后第一次可以加载 Pdf,如果它关闭并再次打开,我们会得到同样的错误。 如果我完全关闭应用程序并重新启动它,我可以再次打开它。可能是 webview 中的缓存问题或类似问题。

我想唯一的解决方法是对 webview 进行新的更新,从而解决问题。 当我尝试将 gmail 应用程序中的电子邮件另存为 pdf 时,有时也会出现该错误。

我不确定它是否适用于所有人,我在我的移动应用程序上也遇到了这个问题,我所做的是:

  1. 转到设置和 select 应用程序
  2. Select 应用程序和 select 从更多选项中显示系统进程
  3. 搜索 Android 系统 WebView
  4. 禁用它并再次启用它 我不知道为什么它以某种方式降低了网络视图版本,之后我发现我的打印功能现在可以使用了,你可以试一试

此问题已在 Chrome/Android System WebView 应用的最新版本中得到解决。 Google 已在 Playstore 上发布更新,我们确认此问题已解决。

跟踪问题here