【问题标题】:Android webview requests to app slowAndroid webview 请求应用程序缓慢
【发布时间】:2017-04-18 03:33:58
【问题描述】:

我有一个主要使用 webview 呈现内容的 android 应用程序。该网络代码向 android 应用程序发出请求,该应用程序包含一个 sqlite 数据库和一堆从我的服务器同步的数据。

我做了很多分析,还有很多时间完全下落不明。以下是我们的一项请求的时间表:

发生的第一个大块是从应用程序的数据库中加载一些数据的请求本身。最后一个块是我们的网络代码接收来自应用程序的响应并渲染所有内容。中间的东西只是 webview 中发生的一些后台任务。

这里有很多看似死角的空间。我已经分析了 android 应用程序中在发出请求时发生的所有事情,包括查询本身,而且时间很短,有数百毫秒的时间无法解释。

Android 在这方面是否存在已知的性能问题?

此应用仅适用于 build 21+。

【问题讨论】:

    标签: android sqlite webview


    【解决方案1】:

    使用这个:

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        webView.setLayerType(View.LAYER_TYPE_HARDWARE, null);
    } else {
        webView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
    }
    

    manifest.xml 添加如下:

    在应用程序级别:

      <application android:hardwareAccelerated="true">
    
    in Activity level :
    
    <activity android:hardwareAccelerated="false" />
    

    【讨论】:

    • 或者试试这个:if (Build.VERSION.SDK_INT >= 11){ webview.setLayerType(View.LAYER_TYPE_SOFTWARE, null); }
    • 似乎没有什么不同 :( 我们使用的是 21+ btw
    • 这个问题似乎与本地存储不起作用有关。我错过了什么吗?顺便说一句,该代码似乎确实加快了我的一些请求,但不是我想要的:)
    猜你喜欢
    • 1970-01-01
    • 2018-02-10
    • 2014-09-02
    • 2017-03-07
    • 2014-04-21
    • 2014-09-27
    • 2017-01-12
    • 2023-03-31
    • 2012-09-26
    相关资源
    最近更新 更多