我的cordova webview应用程序比同一部手机上的android浏览器慢得多

Céd*_*ric 15 performance android cordova hybrid-mobile-app ionic-framework

我用ionicframework和cordova构建了一个Android应用程序.

但是,当我尝试在我的三星Galaxy S4上运行时,该应用程序的速度比我手机的网络浏览器中的相同代码要慢.

我怎么能期望有相同的性能?

我试过了 :

android:hardwareAccelerated="true"

this.appView.getSettings().setRenderPriority(RenderPriority.HIGH);
this.appView.getSettings().setPluginState(android.webkit.WebSettings.PluginState.ON_DEMAND);

<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" />
Run Code Online (Sandbox Code Playgroud)

最后的3.6个cordova版本

我怎样才能拥有与手机浏览器相同的性能(例如,支持元应用程序)?

Lef*_*tyX 18

由于您没有提供代码或示例,因此很难说清楚.
如果您没有使用最新的Android 4.4 KitKat,那么您可能正在使用非常古老的WebView.

较早版本的Android设备(4.0-4.3)使用Android的默认浏览器,与现代Chrome相比,其性能和标准合规性明显降低.使用Crosswalk可为您提供在所有Android设备上使用的特定且更高性能的Chrome版本,以减少设备之间的波动和碎片.

云在更深层次的问题,它是值得一读.

如果要在Web浏览器中获得相同的性能,可以使用Crosswalk替换Web运行时.

Crosswalk可与Cordova 轻松集成.

使用离子框架,您可以简单地:

ionic browser add crosswalk
Run Code Online (Sandbox Code Playgroud)

如果您想指定不同版本的Crosswalk,请运行ionic browser list以查看哪些浏览器可用以及哪些版本.然后运行:

ionic browser add crosswalk@10.39.235.15
Run Code Online (Sandbox Code Playgroud)

Nick Raboy写了一篇有趣的文章,它将引导您完成将CrosswalkCordova + Ionic Framework集成所需的所有步骤.

非常有用的是视频以简单的方式解释了一切.

Crosswalk也可以在共享模式下使用:

"共享模式"允许多个Crosswalk应用程序共享一个Crosswalk运行时.如果设备中尚未安装运行时,则可以从Google Play商店或从开发人员指定的下载位置下载该运行时.使用此功能时,Crosswalk库不包含在应用程序包中,使其显着缩小.

生成一个显着较小的APK文件大小.

它尚未集成在离子框架中,并且没有包含此功能的路线图.