在cordova工程内引用google分析的功能,
在 官网上 查询得到 插件
在 CLI 中输入
cordova plugin add https://github.com/danwilson/google-analytics-plugin.git
结果build时出错 ,error如下:
解决办法: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)
在 build.gradle中
defaultConfig { multiDexEnabled = true//所加的内容 versionCode cdvVersionCode ?: Integer.parseInt("" + privateHelpers.extractIntFromManifest("versionCode") + "0") if (cdvMinSdkVersion != null) { minSdkVersion cdvMinSdkVersion } }
重新build error如下:
> java.util.zip.ZipException: duplicate entry: android/support/v4/print/PrintHelper$1.class
在build.gradle中
dependencies { // compile 'com.google.android.gms:play-services:8.3.0' compile fileTree(dir: 'libs', include: '*.jar') // SUB-PROJECT DEPENDENCIES START debugCompile project(path: "CordovaLib", configuration: "debug") releaseCompile project(path: "CordovaLib", configuration: "release") compile ("com.google.android.gms:play-services-analytics:+"){ exclude module:'support-v4' } // SUB-PROJECT DEPENDENCIES END }
添加。
compile ("com.google.android.gms:play-services-analytics:+"){ exclude module:'support-v4' }
问题解决