Ошибка выполнения сборки в приложении (Cordova build android) после добавления и настройки «cordova-plugin-bg-location-sender» - PullRequest
0 голосов
/ 04 декабря 2018

Ошибка при сборке Cordova

Ионная информация ✔ Сбор информации об окружающей среде - готово!

Ионная:

Ионная (Ionic CLI): 4.2.1 (/ usr /lib / node_modules / ionic) Ionic Framework: ионно-угловой 3.9.2 @ ionic / app-scripts: 3.2.1

Cordova:

cordova (Cordova CLI): 8.1.2 (cordova-lib@8.1.1) Платформы Cordova: Android 7.1.2, браузер 5.0.4 Плагины Cordova: cordova-plugin-ionic-клавиатура 2.1.3, cordova-plugin-ionic-webview 2.2.5, (и 23 других плагина)

Система:

Инструменты Android SDK: 26.1.1 (/ home / hitesh / Android / Sdk) NodeJS: v8.11.3 (/ usr / bin / node) npm: 6.4.1 ОС: Linux 4.13

список плагинов cordova

cordova-open-native-settings 1.5.1 "Native settings"
cordova-plugin-actionsheet 2.3.3 "ActionSheet"
cordova-plugin-advanced-http 2.0.1 "Advanced HTTP plugin"
cordova-plugin-bg-location-sender 2.1.2 "BGLocationSender"
cordova-plugin-camera 4.0.3 "Camera"
cordova-plugin-device 2.0.2 "Device"
cordova-plugin-dialogs 2.0.1 "Notification"
cordova-plugin-email-composer 0.8.15 "EmailComposer"
cordova-plugin-file 6.0.1 "File"
cordova-plugin-geolocation 4.0.1 "Geolocation"
cordova-plugin-googlemaps 2.4.6 "cordova-plugin-googlemaps"
cordova-plugin-ionic-keyboard 2.1.3 "cordova-plugin-ionic-keyboard"
cordova-plugin-ionic-webview 2.2.5 "cordova-plugin-ionic-webview"
cordova-plugin-nativeaudio 3.0.9 "Cordova Native Audio"
cordova-plugin-nativegeocoder 3.1.3 "NativeGeocoder"
cordova-plugin-network-information 2.0.1 "Network Information"
cordova-plugin-request-location-accuracy 2.2.3 "Request Location Accuracy"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-statusbar 2.4.2 "StatusBar"
cordova-plugin-whitelist 1.3.3 "Whitelist"
cordova-plugin-x-socialsharing 5.4.3 "SocialSharing"
cordova-support-google-services 1.1.0 "cordova-support-google-services"
es6-promise-plugin 4.2.2 "Promise"
mx.ferreyra.callnumber 0.0.2 "Cordova Call Number Plugin"
paywitheasebuzz-cordova-plugin 0.0.1 "easebuzz-cordova-kit"
phonegap-plugin-multidex 1.0.0 "Multidex"
phonegap-plugin-push 2.2.3 "PushPlugin"
uk.co.workingedge.phonegap.plugin.launchnavigator 4.2.2 "Launch Navigator"

:app:processDebugGoogleServices
Parsing json file: /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/google-services.json
:app:mergeDebugResources
[string/google_app_id] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/src/main/res/values/strings.xml [string/google_app_id] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/build/generated/res/google-services/debug/values/values.xml: Error: Duplicate resources
[string/google_api_key] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/src/main/res/values/strings.xml [string/google_api_key] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/build/generated/res/google-services/debug/values/values.xml: Error: Duplicate resources
:app:mergeDebugResources FAILED

FAILURE: сборка завершилась неудачей с исключением.

What went wrong:
Execution failed for task ':app:mergeDebugResources'.

[string/google_app_id] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/src/main/res/values/strings.xml [string/google_app_id] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/build/generated/res/google-services/debug/values/values.xml: Error: Duplicate resources
[string/google_api_key] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/src/main/res/values/strings.xml [string/google_api_key] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/build/generated/res/google-services/debug/values/values.xml: Error: Duplicate resources

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

Get more help at https://help.gradle.org

BUILD FAILED в 23 споследняя версия / home / hitesh / Documents / IONIC / APPLICATIONS / Taxiwala / IN_taxiwala / платформы / android / gradlew: команда завершилась неудачно с кодом выхода 1 Вывод ошибки: Примечание: некоторые входные файлы используют или переопределяютустаревший API.Примечание: Перекомпилируйте с -Xlint: устаревшие для деталей.

СБОЙ: Сбой сборки с исключением.

What went wrong:
Execution failed for task ':app:mergeDebugResources'.

[string/google_app_id] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/src/main/res/values/strings.xml [string/google_app_id] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/build/generated/res/google-services/debug/values/values.xml: Error: Duplicate resources
[string/google_api_key] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/src/main/res/values/strings.xml [string/google_api_key] /home/hitesh/Documents/IONIC/APPLICATIONS/Taxiwala/IN_taxiwala/platforms/android/app/build/generated/res/google-services/debug/values/values.xml: Error: Duplicate resources

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

Get more help at https://help.gradle.org

СБОЙ ПОСТРОЕНИЯ через 23 с

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

В каталоге проекта выполните:

./gradlew clean build

или выберите в Android Studio:

Сборка> Очистить проект

0 голосов
/ 04 декабря 2018

Я нашел решение проблемы:

Инструкции, аналогичные тем, которым я следовал (и это вызвало проблему), доступны здесь, хотя версии версий немного устарели:

https://firebase.google.com/docs/android/setup

В моем случае проблема заключалась в следовании этим инструкциям на странице создания приложения в Firebase и добавлении зависимостей в файлы build.gradle проекта и модулякак можно увидеть ниже:

Добавьте в проект build.gradle /project/platforms/android/build.gradle:

buildscript {
    repositories {
        jcenter ()
        maven {
            url "https://maven.google.com"
        }
        Google()
    }
    dependencies {

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.android.tools.build:gradle:3.1.3'

        // Firebase
        classpath 'com.google.gms: google-services: 4.0.0'
    }
}

И добавьте в модуль build.gradle / project / platform /android / app / build.gradle:

buildscript {
    repositories {
        mavenCentral ()
        jcenter ()
        maven {
            url "https://maven.google.com"
        }
        Google()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.3'

        // Firebase
        classpath 'com.google.gms: google-services: 4.0.0'
        classpath 'com.google.firebase: firebase-core: 16.0.0'
    }
}

// Firebase, add at the end of the same file
apply plugin: 'com.google.gms.google-services'

Решение:

Решение, которое я нашел, состояло в том, чтобы прокомментировать строки, которые предшествуют комментарию // Firebase:

Файл: /project/platforms/android/build.gradle:

buildscript {
    repositories {
        jcenter ()
        maven {
            url "https://maven.google.com"
        }
        Google()
    }
    dependencies {

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.android.tools.build:gradle:3.1.3'

        // Firebase
        // classpath 'com.google.gms: google-services: 4.0.0'
    }
}

Файл: /project/platforms/android/app/build.gradle:

buildscript {
    repositories {
        mavenCentral ()
        jcenter ()
        maven {
            url "https://maven.google.com"
        }
        Google()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.3'

        // Firebase
        //classpath 'com.google.gms: google-services: 4.0.0'
        //classpath 'com.google.firebase: firebase-core: 16.0.0'
    }
}

// Firebase, add at the end of the same file
//apply plugin: 'com.google.gms.google-services'

После этих шагов все работало нормально, и я смог запустить $ cordova build android wбез проблем.


Предложение: Если возникнут какие-либо другие ошибки, попробуйте удалить плагины и платформу, а затем заново создайте их:

$ ionic cordova plugin rm cordova-plugin-bg-location-sender --save
$ ionic cordova platform rm android

$ ionic cordova plugin add cordova-plugin-bg-location-sender --save
$ ionic cordova platform add android
...