我正在使用 ionic 4. 当我的项目有 facebook 插件和 BarcodeScanner 插件并输入ionic cordova run android 时,它会出现这个错误:
Command failed with exit code 1 Error output:
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
D8: Program type already present: com.google.zxing.BarcodeFormat
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
> com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
Program type already present: com.google.zxing.BarcodeFormat
Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
Run Code Online (Sandbox Code Playgroud)
我使用以下命令下载这两个插件:
ionic cordova plugin add phonegap-plugin-barcodescanner
npm install @ionic-native/barcode-scanner
ionic cordova plugin add cordova-plugin-facebook4 --variable APP_ID="app_id" --variable APP_NAME="app_name"
npm install --save @ionic-native/facebook
Run Code Online (Sandbox Code Playgroud)
经过几周的搜索,以下步骤帮助我解决了问题:
1.删除android平台。
2.安装cordova-plugin-facebook4
3.在/plugins/cordova-plugin-facebook4/中创建build.gradle
4.复制
dependencies { compile("com.facebook.android:facebook-android-sdk:4.37.0") { exclude group: 'com.google.zxing' } }
Run Code Online (Sandbox Code Playgroud)
到 ../plugins/cordova-plugin-facebook4/build.gradle
5.编辑../plugins/cordova-plugin-facebook4/plugins.xml更改
<framework src="com.facebook.android:facebook-android-sdk:$FACEBOOK_ANDROID_SDK_VERSION"/>
Run Code Online (Sandbox Code Playgroud)
到
<framework src="build.gradle" custom="true" type="gradleReference"/>
Run Code Online (Sandbox Code Playgroud)
6.添加android平台并构建
| 归档时间: |
|
| 查看次数: |
3293 次 |
| 最近记录: |