2015-10-02 15 views
7

ho creato un progetto Cordova aggiunta di 2 piattaforme (Android, iOS) con alcuni plugin. Uno di questi è l'ultima cordova-plugin-crosswalk-webview (1.3.1). Ho scelto iOS8 e Android 4.0 come Android di destinazione. Tutto funziona bene, posso anche costruire la piattaforma Android e iOS.Cordova-plugin-pedonale-visualizzazione web su iOS

Sul mio file config.xml questa linea sono automatica aggiunto:

... 
<preference name="xwalkVersion" value="14+" /> 
<preference name="xwalkCommandLine" value="--disable-pull-to-refresh-effect" /> 
<preference name="xwalkMode" value="embedded" /> 
... 

per Android sono sicuro usare il plugin strisce pedonali. Con Chrome ispettore posso vedere la navigator.userAgent settato a Crosswalk simile a questo image

Il mio pacchetto Android-debug.apk è ora diviso in Android-debug-armv7.apk e Android-debug-x86.apk e l'apk la dimensione è vicino a 25 Mb.

Ma per iOS non riesco a capirne se strisce pedonali è in funzione o meno. Su l'ispettore safari della mia iOS Virtual Machine la variabile navigator.userAgent è:

"Mozilla/5.0 (iPhone; CPU iPhone OS 8_4 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12H141 (140222960683616)" 

Come posso essere sicuro di quello browser sto runnig sul mio iOS? E, se la configurazione di config.xml non è abbastanza, come posso impostare iOS di crosswalk-webview?

Ho letto il quick start guide di crosswalk per iOS ma penso che non sia così comprensibile per chi utilizza normalmente CLI cordova. E nulla è scritto sulla documentazione di cordova-plugin-crosswalk-webview npm package.

UPDATE:

Seguire l'uscita Cordova:

$ cordova plugin list 
cordova-plugin-crosswalk-webview 1.3.1 "Crosswalk WebView Engine" 


$ cordova platforms add ios 

Adding ios project... 
iOS project created with [email protected] 
Running command: /Users/jedi/prj/appMobile/hooks/after_prepare/010_add_platform_class.js /Users/jedi/prj/appMobile 
add to body class: platform-ios 
Running command: /Users/jedi/prj/appMobile/hooks/after_prepare/030_resource_files.js /Users/jedi/prj/appMobile 
... 
Installing "cordova-plugin-console" for ios 
Installing "cordova-plugin-crosswalk-webview" for ios 
Installing "cordova-plugin-device" for ios 
.. 

risposta

2

pedonale su iOS utilizza il nativo WKWebView, che ha il supporto IndexedDB, è possibile eseguire questo codice javascript per controllare se è il WKWebView

if (window.indexedDB) { 
    alert('WKWebView'); 
} else { 
    alert('UIWebView'); 
} 
+0

C'è qualcosa sulla vostra risposta che non è corretta o forse non capisco correttamente. La mia applicazione utilizza IndexDB per memorizzare i dati e quando ho provato con iOS6, l'applicazione ha funzionato con IndexDB senza WKWebView, quindi .. Qual è la differenza da iOS8? – jedi

+0

No, l'app non può utilizzare IndexedDB, forse WebSQL, IdexedDB è stato incluso in Safari su iOS 8 ed è disponibile solo su WKWebView, non su UIWebView http://caniuse.com/#feat=indexeddb "Non supportato in Chrome per iOS o altre WebView di iOS. " – jcesarmobile

+0

Giusto! sulla console di safari inspector window.indexedDB restituisce null. Quindi ... su iOS il mio pouchadapter attiva su WebSQL. La domanda è: come posso usare WKWebView su iOS8? Ho creato l'app per target 8.0 [(img)] (http://ginex.indivia.net/images/ios8_build.png) ma window.indexedDB continua a restituire null. – jedi

1

Il plugin cordova crosswalk aggiunge solo cross walk per Android.

noti che Attraversamento pedonale per iOS è necessario per utilizzare WebKit per le applicazioni su App Store, in modo che utilizza essenzialmente WKWebView. (Esso utilizza WebKit al posto della solita cromo motore di batter si basa su) risposta

Sede di Jesse alla mia domanda: Cordova + Crosswalk iOS still using UIWebView

+0

Dai un'occhiata all'aggiornamento, se il plugin cordova crosswalk aggiunge solo cross walk per Android, l'output della piattaforma cordova è banale – jedi