在 WebView 中加载 url 时应用程序崩溃

问题描述 投票:0回答:1

嗨,我正在尝试在包含 HTML 的 WebView 中加载一个 url。我正在尝试加载

webView.loadDataWithBaseURL("", url, "text/html; charset=utf-8", "UTF-8", "");

但是一旦调用此方法,我的应用程序就会因此异常而崩溃。

:E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!  (parcel size = 1110288). java.lang.RuntimeException: android.os.TransactionTooLargeException: data parcel size 1110288 bytes

我什至尝试过使用内容提供程序,压缩网址并解压缩,但没有任何改变

java android kotlin webview transactiontoolargeexception
1个回答
0
投票

您尝试加载的 HTML 内容似乎太大,因此您收到异常 java.lang.RuntimeException: android.os.TransactionTooLargeException: data packet size 1110288 bytes。

我能想到的可能方法很少。/

  1. 首先看看,如果可以减小HTML内容的大小,最好从中删除多余的元素。

  2. 您可以检查是否可以从应用程序本身在外部浏览器中打开它,而不是在应用程序网络视图中打开它?您可以为此使用 Andriod 意图功能 - https://developer.android.com/reference/android/content/Intent

这会起作用

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(browserIntent);

© www.soinside.com 2019 - 2024. All rights reserved.