Sto compilando una semplice app Cordova e la distribuzione su Android. Voglio testare la fluidità di jQuery Mobile su vari dispositivi Android, quindi sto compilando un'app con i contenuti della cartella demo di jQuery Mobile.L'app Cordova non può caricare alcun file nelle risorse/www (solo index.html)
Ho creato un nuovo progetto Cordova e ho inserito il contenuto della cartella demo di jQuery Mobile nella cartella www
.
Ho quindi utilizzato il binario Cordova per aggiungere la piattaforma Android, eseguire il build cordova e infine cordova run android
.
L'applicazione è stata aperta sul telefono, ma non verrà caricato alcun file diverso da index.html
. Ho collegato l'app per il debugger Chrome ispettore di vedere ciò che non è stato caricando, ecco quello che ho visto:
Tutti i file che Cordova non riesce a trovare, esistono in platforms/android/assets/www
. Cordova può trovare index.html
appena trovato, ma non può caricare nient'altro.
Se apro la cartella in un browser Web, tutto viene caricato correttamente.
Qualcuno sa che cosa potrebbe causare questo problema o quali misure potrei adottare per risolvere ulteriormente e isolare il problema? Ho cercato su Google per ore e non riesco a trovare nessun altro in una situazione del genere. Per altre persone, è il file index.html
che non viene caricato o si sono semplicemente dimenticati di aggiungere i file desiderati nella cartella www
. Nel mio caso, index.html
carica bene, ma non lo farà nient'altro (vedi l'immagine sopra).
Ecco il mio config.xml
(per lo più solo il default standard):
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.rand.jqmdemo" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>jqmdemo</name>
<description>
A sample Apache Cordova application that responds to the deviceready event.
</description>
<author email="[email protected]" href="http://cordova.io">
Apache Cordova Team
</author>
<content src="index.html" />
<plugin name="cordova-plugin-whitelist" spec="1" />
<access origin="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
<engine name="android" spec="~4.1.1" />
</widget>
Ecco il mio AndroidManifest.xml
di file:
<?xml version='1.0' encoding='utf-8'?>
<manifest android:hardwareAccelerated="true" android:versionCode="1" android:versionName="0.0.1" package="com.elliot.jqmdemo" xmlns:android="http://schemas.android.com/apk/res/android">
<supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<application android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name" android:supportsRtl="true">
<activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:theme="@android:style/Theme.Black.NoTitleBar" android:windowSoftInputMode="adjustResize">
<intent-filter android:label="@string/launcher_name">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="22" />
</manifest>
Ecco il mio index.html
di file: http://pastebin.com/duFSLT5T
Questo non è un problema Cordova, questo è un problema della vostra applicazione. Si prega di mostrare il file HTML. – Joerg
@Joerg Grazie per l'aiuto. Questo è il mio file index.html: http://pastebin.com/duFSLT5T non è modificato dalla cartella demo di jQuery Mobile. Tutti i file relativi sono validi e index.html viene caricato correttamente in un normale browser web. – Randall444
Su una nota a margine; Ho usato jQuery Mobile con Phonegap/Cordova prima non era HORRIBLY male, ma ancora piuttosto male, soprattutto con i telefoni più vecchi (~ anni). Non userei più jQuery Mobile su nessuno dei miei progetti, ma invece mi piace Intel AppFramework. – Piwwoli