Cordova packages do not load when deployed to a device

I have a Cordova application that works great when deployed to a browser or just loads into a browser. However, when the application is sent to the device via cordova run android , no plugins were found.

Using the Chrome Remote Device Inspector, I see that the plugins are not loading into what I expect it to be a normal location.

No Cordoba plugins

The following snippet shows a copy of config.xml some censored items.

 <?xml version='1.0' encoding='utf-8'?> <widget defaultlocale="en-US" id="---censored---" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0" xmlns:vs="http://schemas.microsoft.com/appx/2014/htmlapps"> <name>---censored---</name> <description>---censored---</description> <author email="---censored---" href="---censored---">---censored---</author> <vs:template-name>BlankJS</vs:template-name> <content src="index.html" /> <access origin="*" /> <preference name="SplashScreen" value="screen" /> <preference name="windows-target-version" value="10.0" /> <preference name="DisallowOverscroll" value="true" /> <preference name="StatusBarOverlaysWebView" value="false" /> <preference name="StatusBarBackgroundColor" value="#fff" /> <allow-navigation href="*" /> <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> <platform name="android"> <icon density="ldpi" src="res/icons/android/icon-36-ldpi.png" /> <icon density="mdpi" src="res/icons/android/icon-48-mdpi.png" /> <icon density="hdpi" src="res/icons/android/icon-72-hdpi.png" /> <icon density="xhdpi" src="res/icons/android/icon-96-xhdpi.png" /> </platform> <platform name="ios"> <icon height="180" src="res/icons/ios/icon-60-3x.png" width="180" /> <icon height="60" src="res/icons/ios/icon-60.png" width="60" /> <icon height="120" src="res/icons/ios/icon-60-2x.png" width="120" /> <icon height="76" src="res/icons/ios/icon-76.png" width="76" /> <icon height="152" src="res/icons/ios/icon-76-2x.png" width="152" /> <icon height="40" src="res/icons/ios/icon-40.png" width="40" /> <icon height="80" src="res/icons/ios/icon-40-2x.png" width="80" /> <icon height="57" src="res/icons/ios/icon-57.png" width="57" /> <icon height="114" src="res/icons/ios/icon-57-2x.png" width="114" /> <icon height="72" src="res/icons/ios/icon-72.png" width="72" /> <icon height="144" src="res/icons/ios/icon-72-2x.png" width="144" /> <icon height="29" src="res/icons/ios/icon-small.png" width="29" /> <icon height="58" src="res/icons/ios/icon-small-2x.png" width="58" /> <icon height="50" src="res/icons/ios/icon-50.png" width="50" /> <icon height="100" src="res/icons/ios/icon-50-2x.png" width="100" /> </platform> <platform name="windows"> <icon height="150" src="res/icons/windows/Square150x150Logo.scale-100.png" width="150" /> <icon height="360" src="res/icons/windows/Square150x150Logo.scale-240.png" width="360" /> <icon height="30" src="res/icons/windows/Square30x30Logo.scale-100.png" width="30" /> <icon height="310" src="res/icons/windows/Square310x310Logo.scale-100.png" width="310" /> <icon height="44" src="res/icons/windows/Square44x44Logo.scale-100.png" width="44" /> <icon height="106" src="res/icons/windows/Square44x44Logo.scale-240.png" width="106" /> <icon height="70" src="res/icons/windows/Square70x70Logo.scale-100.png" width="70" /> <icon height="71" src="res/icons/windows/Square71x71Logo.scale-100.png" width="71" /> <icon height="170" src="res/icons/windows/Square71x71Logo.scale-240.png" width="170" /> <icon height="50" src="res/icons/windows/StoreLogo.scale-100.png" width="50" /> <icon height="120" src="res/icons/windows/StoreLogo.scale-240.png" width="120" /> <icon height="150" src="res/icons/windows/Wide310x150Logo.scale-100.png" width="310" /> <icon height="360" src="res/icons/windows/Wide310x150Logo.scale-240.png" width="744" /> </platform> <platform name="android"> <splash density="land-hdpi" src="res/screens/android/screen-hdpi-landscape.png" /> <splash density="land-ldpi" src="res/screens/android/screen-ldpi-landscape.png" /> <splash density="land-mdpi" src="res/screens/android/screen-mdpi-landscape.png" /> <splash density="land-xhdpi" src="res/screens/android/screen-xhdpi-landscape.png" /> <splash density="port-hdpi" src="res/screens/android/screen-hdpi-portrait.png" /> <splash density="port-ldpi" src="res/screens/android/screen-ldpi-portrait.png" /> <splash density="port-mdpi" src="res/screens/android/screen-mdpi-portrait.png" /> <splash density="port-xhdpi" src="res/screens/android/screen-xhdpi-portrait.png" /> </platform> <platform name="ios"> <splash height="480" src="res/screens/ios/screen-iphone-portrait.png" width="320" /> <splash height="960" src="res/screens/ios/screen-iphone-portrait-2x.png" width="640" /> <splash height="1024" src="res/screens/ios/screen-ipad-portrait.png" width="768" /> <splash height="2048" src="res/screens/ios/screen-ipad-portrait-2x.png" width="1536" /> <splash height="768" src="res/screens/ios/screen-ipad-landscape.png" width="1024" /> <splash height="1536" src="res/screens/ios/screen-ipad-landscape-2x.png" width="2048" /> <splash height="1136" src="res/screens/ios/screen-iphone-568h-2x.png" width="640" /> <splash height="1334" src="res/screens/ios/screen-iphone-portrait-667h.png" width="750" /> <splash height="2208" src="res/screens/ios/screen-iphone-portrait-736h.png" width="1242" /> <splash height="1242" src="res/screens/ios/screen-iphone-landscape-736h.png" width="2208" /> </platform> <platform name="windows"> <splash height="300" src="res/screens/windows/SplashScreen.scale-100.png" width="620" /> <splash height="1920" src="res/screens/windows/SplashScreen.scale-240.png" width="1152" /> <splash height="1920" src="res/screens/windows/SplashScreenPhone.scale-240.png" width="1152" /> </platform> <vs:toolsetVersion>6.3.1</vs:toolsetVersion> <preference name="target-device" value="universal" /> <preference name="Orientation" value="default" /> <preference name="Fullscreen" value="True" /> <engine name="android" spec="^6.2.3" /> <engine name="browser" spec="^4.1.0" /> <engine name="ios" spec="~4.2.0" /> <engine name="windows" spec="~4.4.2" /> <plugin name="cordova-plugin-device" spec="^1.1.6" /> <plugin name="cordova-plugin-inappbrowser" spec="^1.7.1" /> <plugin name="cordova-plugin-statusbar" spec="~2.2.3" /> <plugin name="cordova-plugin-whitelist" spec="1.2.2" /> </widget> 

Cordoba .js loads just fine, but I can't get plugins to load outside the browser.

Any direction will be greatly appreciated!

Edit I found some information on how TACO works, I suppose I might be in a situation like this .

+7
android ios cordova cordova-plugins visual-studio-cordova
source share
5 answers

When Cordova generates plugins, it creates a folder in the root directory, plugins . We used our own plugins folder to host third-party JS animation plugins. Due to case insensitivity of Windows. There were no errors in the browser.

When deployed to Android-Windows, there will be a collection of files, check the plugins and map the plugins and move them there. This is why the extracted apk file appeared correctly. When android searched for files, it didn't match plugins and couldn't find my plugins at all.

In short, do not create a folder with a different case than plugins to host external plugins.

0
source share

Have you tried removing plugins and re-adding them through cordova plugin add <plugin name> ?

What is cordova plugin list output?

What is the output for cordova build android -XLint:all ?

Make sure you import plugins into the corresponding html file

0
source share

It looks like your configuration is missing one important plugin:

 <plugin name="cordova-plugin-splashscreen" spec="^3.2.2" /> 

I use 3.2.2 in my configuration, you can try with the latest version 4.0.3.

You can also check if all plugins are available in plaftorms / android / platform_www / plugins:

enter image description here

0
source share

Can you post environmental information:

 ionic info 

Does ion feed give any errors? This could be a compatibility issue or a permission issue. can you also confirm that the files found do not exist in the platform folder? Go to platform plugins > android> platform_www> in the worst case, I would recommend that you copy the project folder as a backup, go to the project directory, delete the node_modules folder, run:

 npm install 

this will update the library.

0
source share

Try changing the Cordova CLI to a lower version in the configuration file in the "Platforms" section.

0
source share

All Articles