13

Ho costruito un'app per Android con ionicframework e cordova.La mia app webview cordova è molto più lenta di quella del browser Android sullo stesso telefono

Ma quando provo a correre sul mio Samsung Galaxy S4, l'app è molto più lenta dello stesso codice nei browser del mio telefono.

Come posso aspettarmi di avere gli stessi perfs?

ho provato:

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" /> 

Con l'ultima versione 3.6 Cordova

Come posso fare per avere le stesse prestazioni come posso vedere sul browser del telefono (con meta app-capace per esempio) ?

risposta

18

È difficile dirlo poiché non hai fornito codice o un campione.
Se non si utilizza l'ultima versione Android 4.4 KitKat, è probabile che si stia utilizzando un vecchio WebView.

più vecchio versioni dei dispositivi Android (4.0-4.3) utilizzano browser predefinito di Android, che ha significativamente meno prestazioni e gli standard di conformità di Chrome moderna. L'uso di Crosswalk ti offre uno specifico e una versione più performante di Chrome da utilizzare su tutti i dispositivi Android, , al fine di ridurre le fluttuazioni e la frammentazione tra i dispositivi.

Questo article approfondisce il problema e vale la pena leggerlo.

Se si desidera ottenere le stesse prestazioni del proprio browser Web, è possibile sostituire il runtime Web utilizzando Crosswalk.

pedonale può essere integrato con easilyCordova.

Con quadro ionica è possibile simply:

ionic browser add crosswalk 

Se desideri specificare una versione diversa di Attraversamento pedonale, eseguire ionic browser list per vedere quale browser sono versioni disponibili e quali. Quindi eseguire:

ionic browser add [email protected] 

Nick Raboy ha scritto un interesting article che guida l'utente attraverso tutte le passo è necessario prendere per integrare pedonale con Cordova + ionico quadro.

Molto utile è il video con spiega tutto in modo semplice.

pedonale può essere utilizzato anche in Shared Mode:

"modalità condivisa" consente a più applicazioni Crosswalk di condividere uno runtime pedonale.Se il runtime non è già installato nel dispositivo , verrà scaricato dal Google Play Store o da una posizione di download specificata dallo sviluppatore. Quando si utilizza questa funzione , la libreria Crosswalk non è inclusa nel pacchetto dell'applicazione, rendendolo notevolmente più piccolo.

Produrre una dimensione di file APK più piccola significativa.

Non è ancora integrato nella struttura ionica e non esiste una mappa stradale per includere questo feature.

+0

Se stai usando Ionic, Crosswalk non è in bundle nativamente. http://blog.ionic.io/crosswalk-comes-to-ionic/ – csvan

+1

Utilizzo di Crosswalk ha aiutato le prestazioni della mia app in modo massiccio. Molte grazie. –

+0

È possibile che venga visualizzato un errore Ndk dopo averlo fatto. L'ho fatto. Vedere la soluzione qui http://stackoverflow.com/questions/31979965/after-updating-android-studio-to-version-1-3-0-i-am-getting-ndk-integration-is – rharvey

1

Su un 1 + 1 ottengo le stesse prestazioni attraverso il crosstalk come attraverso la webview nativa. Sfortunatamente entrambe queste opzioni non sono così reattive come quando la stessa app viene testata su un iPhone 5 "venerabile". Quindi usare solo il crosstalk potrebbe non essere sufficiente, ma potresti essere fortunato :)

Problemi correlati