我尝试在PhoneGap项目中使用此插件并在PhoneGap Build上构建它: 科尔多瓦 - 插件 - mauron85背景,地理位置 我在config.xml中添加了这个首选项:
<gap:plugin name="cordova-plugin-mauron85-background-geolocation-phonegapbuild" source="npm"/>
不幸的是,我在Android版本上有编译错误。我阅读了本网站上的说明:https://www.npmjs.com/package/cordova-plugin-mauron85-background-geolocation并且它无效。
我在config.xml中添加了这个首选项:
<preference name="android-build-tool" value="gradle" />
我还删除了所有其他插件,以确保没有依赖项问题。
我也尝试更改此偏好:
<preference name="android-minSdkVersion" value="22"/>
到14,18,21,22,我得到了相同的结果。
这是我在PhoneGap Build日志中遇到的错误:
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Lcom/google/android/gms/actions/ReserveIntents;
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334)
at com.android.dx.command.dexer.Main.run(Main.java:277)
at com.android.dx.command.dexer.Main.main(Main.java:245)
at com.android.dx.command.Main.main(Main.java:106)
有没有人遇到同样的问题并有解决方案?
答案 0 :(得分:0)
发生此错误,如果你/插件,请尝试安装多个Google服务。
适用于我的解决方案是在Android Studio中的build.gradle(Module Android)文件的顶部包含以下行:
apply plugin: 'com.android.application'
configurations {
all*.exclude group: 'com.android.support', module: 'support-v4'
all*.exclude group: 'com.google.android.gms', module: 'play-services'
}
答案 1 :(得分:0)
我是该插件的维护者。 Phonegap Build最近做了一些更改(它支持config.xml中的框架声明)所以你不必使用cordova-plugin-mauron85-background-geolocation-phonegapbuild(我昨天已经弃用了它)。
现在,您可以安全地将cordova-plugin-mauron85-background-geolocation与PhoneGap Build一起使用。只需将其添加到confix.xml中即可。
<gap:plugin name="cordova-plugin-mauron85-background-geolocation" source="npm"/>