Cordova mobile-config.js and errors during build


#1

Problem with cordova. I have run my app using meteor run android-device without a problem. I try to access the device uuid and get a value with no problem. I build the app and include a mobile.config.js file.
The apk file does not work.
i try running my app (now with the mobile-config.js file) i.e. meteor run android-device with the device plugged in via usb.
The app now throws the error “Uncaught ReferenceError: device is not defined”.
So I add the plugin cordova-plugin-device to my project.
I build the project again and the build throws a lot of errors the most important of which is
Error: Uh oh!
"/Users/ellingson/meteor_apps/ebw_flash/.meteor/local/cordova-build/platforms/android/src/org/apache/cordova/device/Device.java" already exists!

Here’s how I add the plugin
cordova:org.apache.cordova-plugin-device@https://github.com/apache/cordova-plugin-device/tarball/ad5f1e7bfd05ef98c01df549a0fa98036a5625db
I’m pretty sure the problem has to do with the mobile-cionfi.js file. I’m probably leaving something out but don’t know what.

Any help would be appreciated

The mobile-config.js file is below (names have been changed)

App.info({
name: ‘my_app’,
description: ‘blah blah blah’,
author: ‘ernieboy’,
email: ‘me@junk.com’,
version: ‘0.0.1’
});

App.icons({

// Android
’android_ldpi’: ‘resources/icons/icon-36x36.png’,
‘android_mdpi’: ‘resources/icons/icon-48x48.png’,
‘android_hdpi’: ‘resources/icons/icon-72x72.png’,
‘android_xhdpi’: ‘resources/icons/icon-96x96.png’
});

App.launchScreens({
// Android
’android_ldpi_portrait’: ‘resources/splash/splash-200x320.png’,
‘android_ldpi_landscape’: ‘resources/splash/splash-320x200.png’,
‘android_mdpi_portrait’: ‘resources/splash/splash-320x480.png’,
‘android_mdpi_landscape’: ‘resources/splash/splash-480x320.png’,
‘android_hdpi_portrait’: ‘resources/splash/splash-480x800.png’,
‘android_hdpi_landscape’: ‘resources/splash/splash-800x480.png’,
‘android_xhdpi_portrait’: ‘resources/splash/splash-720x1280.png’,
‘android_xhdpi_landscape’: ‘resources/splash/splash-1280x720.png’
});


#2

I have done some more investigating.
First the way to add this particular plugin is from the cordova repository.
Looking in the repository I found the version of the plugin (meteor requires either the version or the tarball)
correct command
meteor add cordova:org.apache.org.apache.cordova.device@0.3.0
After fixing that the meteor run android-device ran just fine and loaded the device on two android devices
successfully (Samsung Galaxy 3 phone and Samsung Note 4 tablet). Device ids were optained on both devices.
However, ona a Nexus 7 (2013) device threw an error (unknow variable). For the time being (at least until I’m satisfied
that device will never work on the nexus) I use a try and catch around the call. That allows everything else in the app to
work except for the call to device.
My question has now become, Is there a way to get permissions or to set some variable in the mobile-config that allows
the cordova device plugin to query a Nexus 7 device, or some other device that may throw this error?