Cordova - Определение нескольких файлов dex (аннотация)

Я работаю над проектом с ионным. После того, как я установил плагин Facebook, я больше не могу собрать проект для Android!

Команда

ionic build android

дает мне это сообщение об ошибке

UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/annotation/AnimRes;

Я читаю много уроков / ответов об этой ошибке, и, похоже, это связано с использованием плагина Facebook с плагином push-уведомлений.

Уже два дня я пробую много разных решений, но ни одно из них не работает:(

Вот некоторая информация о моей конфигурации:

plugin com.phonegap.plugins.PushPlugin version 2.5.0
plugin com.phonegap.plugins.facebookconnect version 0.11.0 (installed with the local repository, as indicated on github)
cordova version 5.0
ionic version 1.6.3

Похоже, что эта проблема связана с библиотекой "support-annotations", загруженной несколько раз. Купить я действительно не знаю, как это возможно и где я могу это проверить.

Вы можете мне помочь? У вас есть идеи, как заставить это работать? Есть ли файл конфигурации ionic/cordova, где я могу проверить зависимости?

Заранее большое спасибо.

5 ответов

Ошибка нескольких файлов dex возникает из-за использования нескольких файлов поддержки jar в проекте ionic / cordova

вам нужно изменить build.gradle под платформы / Android

найдите нижнюю строку

apply plugin:'com.android.application'

после добавления этих ниже строк

configurations {
   all*.exclude group: 'com.android.support', module: 'support-v4'
} 

Я решил ту же проблему в моем приложении проблема

 com.android.support:support-v4:+

com.android.support:support-v4:+ файл существует в / platform /android/phonegap-facebook-plugin/Myapp-FacebookLib/libs

если вы хотите использовать только Facebook и Push Notification Plugin, тогда просто зафиксируйте строку в project.properties

#cordova.system.library.1=com.android.support:support-v4:+

Лучший способ решить эту проблему

1 First delete the android-support-v4.jar from /platforms/android/phonegap-facebook-plugin/Myapp-FacebookLib/libs

2 second step create a file name build-extras.gradle in /platforms/android/phonegap-facebook-plugin/Myapp-FacebookLib/

и введите в файл

dependencies {
compile "com.android.support:support-v4:+" }

Добавление этого в project.properties разрешит все экземпляры ошибок V4.

cordova.system.library.7=com.android.support:appcompat-v7:27.1.0

Плагины Push- и Facebook конфликтуют из-за использования разных версий библиотек поддержки Android.

Смотрите мой ответ на этот вопрос: Android Studio Cordova Push плагин

У нас была такая же проблема с плагином Google Analytics с плагином One Signal, и, наконец, она была решена путем установки плагинов в другом порядке;

  1. сначала установите Google Analytics
  2. а затем плагин One Signal, если вы установите в обратном порядке, вы получите эту ошибку.

Это был наш конфиг:

  • Cordova CLI: 7.0.1
  • Версия Ionic Framework: 3.3.0
  • Ионная версия CLI: 2.2.1
  • Ionic App Lib Версия: 2.2.0

Ура!

Другие вопросы по тегам