gpt4 book ai didi

java - 发生inflate异常 'androidx.appcompat:appcompat:1.1.0'

转载 作者:行者123 更新时间:2023-11-30 06:40:27 29 4
gpt4 key购买 nike

我正在尝试升级我的 gradle。当我将 appcompat 从 1.0.2 更新到 1.1.0 时,我的 webview 在某些手机上不再工作。 (API 21 和 22)。
有没有一种聪明的方法可以升级到 1.1.0 并仍然使 webview 工作。

我收到“android.view.InflateException: Binary XML file line #1: Error inflating class”。我试图找到一种方法来更新我的模拟器上的 WebView 。但我真的希望有一个代码可以解决问题,适用于不更新 webview 的用户。

我的 xml:

<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>

我的 Activity :

 private WebView mWebView;
private String state;

@SuppressLint("SetJavaScriptEnabled")
@Override
protected void onCreate(Bundle savedInstanceState) {
try {
super.onCreate(savedInstanceState);

setContentView(R.layout.login_webview_activity);

mWebView = findViewById(R.id.webview);

mWebView.setWebViewClient(new MyBrowser());

WebSettings settings = mWebView.getSettings();
settings.setJavaScriptEnabled(true);
settings.setDomStorageEnabled(true);

CookieManager.getInstance().setAcceptCookie(true);
CookieManager.getInstance().setAcceptThirdPartyCookies(mWebView, true);

mWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);

我的错误:

WebViewActivity: android.view.InflateException: Binary XML file line #1: Error inflating class android.webkit.WebView
at android.view.LayoutInflater.createView(LayoutInflater.java:633)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:55)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:682)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:741)
at android.view.LayoutInflater.inflate(LayoutInflater.java:482)
at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:555)
at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:161)
at no.posten.sporing.controller.activity.WebViewActivity.onCreate(WebViewActivity.java:53)
at android.app.Activity.performCreate(Activity.java:5937)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)

再一次 - appcompat 1.0.2 工作得很好,但不是 1.1.0。

最佳答案

如果您不依赖 DayNight 主题切换(或其他 UiMode events ),您可以将 android:configChanges="uiMode" 添加到 webview Activity list 以防止 AppCompatDelegate 更新资源配置和从而搞乱了 webview 的膨胀。通过 studing the sourcecode 找到了此解决方法1.1.0-rc01 到 1.1.0 的更改。

降级到 1.1.0-rc01 应该也可以。

关于java - 发生inflate异常 'androidx.appcompat:appcompat:1.1.0',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57968967/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com