<legend id='QWqjm'><style id='QWqjm'><dir id='QWqjm'><q id='QWqjm'></q></dir></style></legend><tfoot id='QWqjm'></tfoot>
  • <i id='QWqjm'><tr id='QWqjm'><dt id='QWqjm'><q id='QWqjm'><span id='QWqjm'><b id='QWqjm'><form id='QWqjm'><ins id='QWqjm'></ins><ul id='QWqjm'></ul><sub id='QWqjm'></sub></form><legend id='QWqjm'></legend><bdo id='QWqjm'><pre id='QWqjm'><center id='QWqjm'></center></pre></bdo></b><th id='QWqjm'></th></span></q></dt></tr></i><div id='QWqjm'><tfoot id='QWqjm'></tfoot><dl id='QWqjm'><fieldset id='QWqjm'></fieldset></dl></div>

          <bdo id='QWqjm'></bdo><ul id='QWqjm'></ul>
      1. <small id='QWqjm'></small><noframes id='QWqjm'>

      2. 安装 OneSingle 插件后 ionic build 出错

        ionic build getting error after installing OneSingle plugin(安装 OneSingle 插件后 ionic build 出错)

          <tbody id='aCpVt'></tbody>
        <tfoot id='aCpVt'></tfoot>

            1. <i id='aCpVt'><tr id='aCpVt'><dt id='aCpVt'><q id='aCpVt'><span id='aCpVt'><b id='aCpVt'><form id='aCpVt'><ins id='aCpVt'></ins><ul id='aCpVt'></ul><sub id='aCpVt'></sub></form><legend id='aCpVt'></legend><bdo id='aCpVt'><pre id='aCpVt'><center id='aCpVt'></center></pre></bdo></b><th id='aCpVt'></th></span></q></dt></tr></i><div id='aCpVt'><tfoot id='aCpVt'></tfoot><dl id='aCpVt'><fieldset id='aCpVt'></fieldset></dl></div>
                <bdo id='aCpVt'></bdo><ul id='aCpVt'></ul>

                <small id='aCpVt'></small><noframes id='aCpVt'>

                <legend id='aCpVt'><style id='aCpVt'><dir id='aCpVt'><q id='aCpVt'></q></dir></style></legend>

                1. 本文介绍了安装 OneSingle 插件后 ionic build 出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  执行 $ ionic cordova build android 后出现此错误在添加 OneSingle 插件之前它工作正常,但在使用

                  After executing $ ionic cordova build android getting this error before adding OneSingle Plugin it was working fine but after add OneSingle plugin using

                  $ ionic cordova plugin add onesignal-cordova-plugin
                  $ npm install --save @ionic-native/onesignal
                  

                  出现以下错误

                  这是控制台日志

                  UP-TO-DATE
                  :app:preBuild UP-TO-DATE
                  :app:preDebugBuild
                  
                  FAILED
                  
                  FAILURE: Build failed with an exception.
                  
                  * What went wrong:
                  Could not resolve all files for configuration ':app:debugCompileClasspath'.
                  > Could not find any version that matches com.google.firebase:firebase-measurement-connector:[10.2.1,12.1.0[.
                    Versions that do not match:
                  
                        17.0.0
                        16.0.0
                        15.0.0
                    Required by:
                  
                        project :app > com.google.firebase:firebase-messaging:17.0.0
                  
                  * 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 in 19s
                  14 actionable tasks: 1 executed, 13 up-to-date
                  (node:13048) UnhandledPromiseRejectionWarning: Error: /home/chamikara/Projects/freelance/ionic/test/beachlines/platforms/android/gradlew: Command failed with exit code 1 Error output:
                  FAILURE: Build failed with an exception.
                  
                  * What went wrong:
                  Could not resolve all files for configuration ':app:debugCompileClasspath'.
                  > Could not find any version that matches com.google.firebase:firebase-measurement-connector:[10.2.1,12.1.0[.
                    Versions that do not match:
                        17.0.0
                        16.0.0
                        15.0.0
                    Required by:
                        project :app > com.google.firebase:firebase-messaging:17.0.0
                  
                  * 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 in 19s
                      at ChildProcess.whenDone (/home/chamikara/Projects/freelance/ionic/test/beachlines/platforms/android/cordova/node_modules/cordova-common/src/superspawn.js:169:23)
                      at emitTwo (events.js:126:13)
                      at ChildProcess.emit (events.js:214:7)
                      at maybeClose (internal/child_process.js:925:16)
                      at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
                  (node:13048) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
                  (node:13048) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
                  

                  但是在我删除 OneSingle 插件后它工作正常

                  but after I remove the OneSingle plugin it was working fine

                  这里是 paltform/android/build.gradle

                  /*
                         Licensed to the Apache Software Foundation (ASF) under one
                         or more contributor license agreements.  See the NOTICE file
                         distributed with this work for additional information
                         regarding copyright ownership.  The ASF licenses this file
                         to you under the Apache License, Version 2.0 (the
                         "License"); you may not use this file except in compliance
                         with the License.  You may obtain a copy of the License at
                  
                           http://www.apache.org/licenses/LICENSE-2.0
                  
                         Unless required by applicable law or agreed to in writing,
                         software distributed under the License is distributed on an
                         "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
                         KIND, either express or implied.  See the License for the
                         specific language governing permissions and limitations
                         under the License.
                  */
                  
                  apply plugin: 'com.android.application'
                  
                  buildscript {
                      repositories {
                          jcenter()
                          maven {
                              url "https://maven.google.com"
                          }
                      }
                  
                      // Switch the Android Gradle plugin version requirement depending on the
                      // installed version of Gradle. This dependency is documented at
                      // http://tools.android.com/tech-docs/new-build-system/version-compatibility
                      // and https://issues.apache.org/jira/browse/CB-8143
                      dependencies {
                          classpath 'com.android.tools.build:gradle:3.0.0'
                      }
                  }
                  
                  // Allow plugins to declare Maven dependencies via build-extras.gradle.
                  allprojects {
                      repositories {
                          jcenter()
                          maven {
                              url "https://maven.google.com"
                          }
                      }
                  }
                  
                  task wrapper(type: Wrapper) {
                      gradleVersion = '4.1.0'
                  }
                  
                  // Configuration properties. Set these via environment variables, build-extras.gradle, or gradle.properties.
                  // Refer to: http://www.gradle.org/docs/current/userguide/tutorial_this_and_that.html
                  ext {
                      apply from: 'CordovaLib/cordova.gradle'
                      // The value for android.compileSdkVersion.
                      if (!project.hasProperty('cdvCompileSdkVersion')) {
                          cdvCompileSdkVersion = null;
                      }
                      // The value for android.buildToolsVersion.
                      if (!project.hasProperty('cdvBuildToolsVersion')) {
                          cdvBuildToolsVersion = null;
                      }
                      // Sets the versionCode to the given value.
                      if (!project.hasProperty('cdvVersionCode')) {
                          cdvVersionCode = null
                      }
                      // Sets the minSdkVersion to the given value.
                      if (!project.hasProperty('cdvMinSdkVersion')) {
                          cdvMinSdkVersion = null
                      }
                      // Whether to build architecture-specific APKs.
                      if (!project.hasProperty('cdvBuildMultipleApks')) {
                          cdvBuildMultipleApks = null
                      }
                      // .properties files to use for release signing.
                      if (!project.hasProperty('cdvReleaseSigningPropertiesFile')) {
                          cdvReleaseSigningPropertiesFile = null
                      }
                      // .properties files to use for debug signing.
                      if (!project.hasProperty('cdvDebugSigningPropertiesFile')) {
                          cdvDebugSigningPropertiesFile = null
                      }
                      // Set by build.js script.
                      if (!project.hasProperty('cdvBuildArch')) {
                          cdvBuildArch = null
                      }
                  
                      // Plugin gradle extensions can append to this to have code run at the end.
                      cdvPluginPostBuildExtras = []
                  }
                  
                  // PLUGIN GRADLE EXTENSIONS START
                  apply from: "cordova-plugin-firebase/beachlines-build.gradle"
                  apply from: "onesignal-cordova-plugin/beachlines-build-extras-onesignal.gradle"
                  // PLUGIN GRADLE EXTENSIONS END
                  
                  def hasBuildExtras = file('build-extras.gradle').exists()
                  if (hasBuildExtras) {
                      apply from: 'build-extras.gradle'
                  }
                  
                  // Set property defaults after extension .gradle files.
                  if (ext.cdvCompileSdkVersion == null) {
                      ext.cdvCompileSdkVersion = privateHelpers.getProjectTarget()
                  }
                  if (ext.cdvBuildToolsVersion == null) {
                      ext.cdvBuildToolsVersion = privateHelpers.findLatestInstalledBuildTools()
                  }
                  if (ext.cdvDebugSigningPropertiesFile == null && file('debug-signing.properties').exists()) {
                      ext.cdvDebugSigningPropertiesFile = 'debug-signing.properties'
                  }
                  if (ext.cdvReleaseSigningPropertiesFile == null && file('release-signing.properties').exists()) {
                      ext.cdvReleaseSigningPropertiesFile = 'release-signing.properties'
                  }
                  
                  // Cast to appropriate types.
                  ext.cdvBuildMultipleApks = cdvBuildMultipleApks == null ? false : cdvBuildMultipleApks.toBoolean();
                  ext.cdvMinSdkVersion = cdvMinSdkVersion == null ? null : Integer.parseInt('' + cdvMinSdkVersion)
                  ext.cdvVersionCode = cdvVersionCode == null ? null : Integer.parseInt('' + cdvVersionCode)
                  
                  def computeBuildTargetName(debugBuild) {
                      def ret = 'assemble'
                      if (cdvBuildMultipleApks && cdvBuildArch) {
                          def arch = cdvBuildArch == 'arm' ? 'armv7' : cdvBuildArch
                          ret += '' + arch.toUpperCase().charAt(0) + arch.substring(1);
                      }
                      return ret + (debugBuild ? 'Debug' : 'Release')
                  }
                  
                  // Make cdvBuild a task that depends on the debug/arch-sepecific task.
                  task cdvBuildDebug
                  cdvBuildDebug.dependsOn {
                      return computeBuildTargetName(true)
                  }
                  
                  task cdvBuildRelease
                  cdvBuildRelease.dependsOn {
                      return computeBuildTargetName(false)
                  }
                  
                  task cdvPrintProps << {
                      println('cdvCompileSdkVersion=' + cdvCompileSdkVersion)
                      println('cdvBuildToolsVersion=' + cdvBuildToolsVersion)
                      println('cdvVersionCode=' + cdvVersionCode)
                      println('cdvMinSdkVersion=' + cdvMinSdkVersion)
                      println('cdvBuildMultipleApks=' + cdvBuildMultipleApks)
                      println('cdvReleaseSigningPropertiesFile=' + cdvReleaseSigningPropertiesFile)
                      println('cdvDebugSigningPropertiesFile=' + cdvDebugSigningPropertiesFile)
                      println('cdvBuildArch=' + cdvBuildArch)
                      println('computedVersionCode=' + android.defaultConfig.versionCode)
                      android.productFlavors.each { flavor ->
                          println('computed' + flavor.name.capitalize() + 'VersionCode=' + flavor.versionCode)
                      }
                  }
                  
                  android {
                      sourceSets {
                          main {
                              manifest.srcFile 'AndroidManifest.xml'
                              java.srcDirs = ['src']
                              resources.srcDirs = ['src']
                              aidl.srcDirs = ['src']
                              renderscript.srcDirs = ['src']
                              res.srcDirs = ['res']
                              assets.srcDirs = ['assets']
                              jniLibs.srcDirs = ['libs']
                          }
                      }
                  
                      defaultConfig {
                          versionCode cdvVersionCode ?: new BigInteger("" + privateHelpers.extractIntFromManifest("versionCode"))
                          applicationId privateHelpers.extractStringFromManifest("package")
                  
                          if (cdvMinSdkVersion != null) {
                              minSdkVersion cdvMinSdkVersion
                          }
                      }
                  
                      lintOptions {
                        abortOnError false;
                      }
                  
                      compileSdkVersion cdvCompileSdkVersion
                      buildToolsVersion cdvBuildToolsVersion
                  
                      if (Boolean.valueOf(cdvBuildMultipleApks)) {
                          productFlavors {
                              armv7 {
                                  versionCode defaultConfig.versionCode*10 + 2
                                  ndk {
                                      abiFilters "armeabi-v7a", ""
                                  }
                              }
                              x86 {
                                  versionCode defaultConfig.versionCode*10 + 4
                                  ndk {
                                      abiFilters "x86", ""
                                  }
                              }
                              all {
                                  ndk {
                                      abiFilters "all", ""
                                  }
                              }
                          }
                      }
                      /*
                  
                      ELSE NOTHING! DON'T MESS WITH THE VERSION CODE IF YOU DON'T HAVE TO!
                  
                      else if (!cdvVersionCode) {
                        def minSdkVersion = cdvMinSdkVersion ?: privateHelpers.extractIntFromManifest("minSdkVersion")
                        // Vary versionCode by the two most common API levels:
                        // 14 is ICS, which is the lowest API level for many apps.
                        // 20 is Lollipop, which is the lowest API level for the updatable system webview.
                        if (minSdkVersion >= 20) {
                          defaultConfig.versionCode += 9
                        } else if (minSdkVersion >= 14) {
                          defaultConfig.versionCode += 8
                        }
                      }
                      */
                  
                      compileOptions {
                          sourceCompatibility JavaVersion.VERSION_1_6
                          targetCompatibility JavaVersion.VERSION_1_6
                      }
                  
                      if (cdvReleaseSigningPropertiesFile) {
                          signingConfigs {
                              release {
                                  // These must be set or Gradle will complain (even if they are overridden).
                                  keyAlias = ""
                                  keyPassword = "__unset" // And these must be set to non-empty in order to have the signing step added to the task graph.
                                  storeFile = null
                                  storePassword = "__unset"
                              }
                          }
                          buildTypes {
                              release {
                                  signingConfig signingConfigs.release
                              }
                          }
                          addSigningProps(cdvReleaseSigningPropertiesFile, signingConfigs.release)
                      }
                      if (cdvDebugSigningPropertiesFile) {
                          addSigningProps(cdvDebugSigningPropertiesFile, signingConfigs.debug)
                      }
                  }
                  
                  dependencies {
                      implementation fileTree(dir: 'libs', include: '*.jar')
                      // SUB-PROJECT DEPENDENCIES START
                      implementation(project(path: "CordovaLib"))
                      compile "com.google.gms:google-services:+"
                      compile "com.google.android.gms:play-services-tagmanager:+"
                      compile "com.google.firebase:firebase-core:+"
                      compile "com.google.firebase:firebase-messaging:+"
                      compile "com.google.firebase:firebase-crash:+"
                      compile "com.google.firebase:firebase-config:+"
                      compile "com.google.firebase:firebase-perf:+"
                      compile "com.onesignal:OneSignal:3.9.1"
                      // SUB-PROJECT DEPENDENCIES END
                  }
                  
                  def promptForReleaseKeyPassword() {
                      if (!cdvReleaseSigningPropertiesFile) {
                          return;
                      }
                      if ('__unset'.equals(android.signingConfigs.release.storePassword)) {
                          android.signingConfigs.release.storePassword = privateHelpers.promptForPassword('Enter key store password: ')
                      }
                      if ('__unset'.equals(android.signingConfigs.release.keyPassword)) {
                          android.signingConfigs.release.keyPassword = privateHelpers.promptForPassword('Enter key password: ');
                      }
                  }
                  
                  gradle.taskGraph.whenReady { taskGraph ->
                      taskGraph.getAllTasks().each() { task ->
                          if (['validateReleaseSigning', 'validateSigningRelease', 'validateSigningArmv7Release', 'validateSigningX86Release'].contains(task.name)) {
                              promptForReleaseKeyPassword()
                          }
                      }
                  }
                  
                  def addSigningProps(propsFilePath, signingConfig) {
                      def propsFile = file(propsFilePath)
                      def props = new Properties()
                      propsFile.withReader { reader ->
                          props.load(reader)
                      }
                  
                      def storeFile = new File(props.get('key.store') ?: privateHelpers.ensureValueExists(propsFilePath, props, 'storeFile'))
                      if (!storeFile.isAbsolute()) {
                          storeFile = RelativePath.parse(true, storeFile.toString()).getFile(propsFile.getParentFile())
                      }
                      if (!storeFile.exists()) {
                          throw new FileNotFoundException('Keystore file does not exist: ' + storeFile.getAbsolutePath())
                      }
                      signingConfig.keyAlias = props.get('key.alias') ?: privateHelpers.ensureValueExists(propsFilePath, props, 'keyAlias')
                      signingConfig.keyPassword = props.get('keyPassword', props.get('key.alias.password', signingConfig.keyPassword))
                      signingConfig.storeFile = storeFile
                      signingConfig.storePassword = props.get('storePassword', props.get('key.store.password', signingConfig.storePassword))
                      def storeType = props.get('storeType', props.get('key.store.type', ''))
                      if (!storeType) {
                          def filename = storeFile.getName().toLowerCase();
                          if (filename.endsWith('.p12') || filename.endsWith('.pfx')) {
                              storeType = 'pkcs12'
                          } else {
                              storeType = signingConfig.storeType // "jks"
                          }
                      }
                      signingConfig.storeType = storeType
                  }
                  
                  for (def func : cdvPluginPostBuildExtras) {
                      func()
                  }
                  
                  // This can be defined within build-extras.gradle as:
                  //     ext.postBuildExtras = { ... code here ... }
                  if (hasProperty('postBuildExtras')) {
                      postBuildExtras()
                  }
                  

                  这是自动生成的 gradle 文件,我尝试使用依赖项的版本而不是更新它

                  This is the auto generated gradle file and I try to update it with version to the dependencies instead of

                  dependencies {
                      implementation fileTree(dir: 'libs', include: '*.jar')
                      // SUB-PROJECT DEPENDENCIES START
                      implementation(project(path: "CordovaLib"))
                      compile "com.google.gms:google-services:+"
                      compile "com.google.android.gms:play-services-tagmanager:+"
                      compile "com.google.firebase:firebase-core:+"
                      compile "com.google.firebase:firebase-messaging:+"
                      compile "com.google.firebase:firebase-crash:+"
                      compile "com.google.firebase:firebase-config:+"
                      compile "com.google.firebase:firebase-perf:+"
                      compile "com.onesignal:OneSignal:3.9.1"
                      // SUB-PROJECT DEPENDENCIES END
                  }
                  

                  但这是最糟糕的!

                  推荐答案

                  首先删除项目中的以下文件

                  first you remove below files on your project

                  ./node_modules
                  ./plugins
                  ./platforms
                  ./www
                  

                  然后删除 ioniccordova之后删除 npm

                  then remove ionic and cordova after that remove the npm

                  然后重新安装npmioniccordova

                  运行之后

                  npm install
                  

                  然后你可以运行 ionic serveionic cordova build android

                  then you can run ionic serve or ionic cordova build android

                  享受:)

                  这篇关于安装 OneSingle 插件后 ionic build 出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  Sqlite database not copied from asset folder Android(Sqlite 数据库未从资产文件夹 Android 复制)
                  SQLite Database Copy Appears Corrupted When Generated by Device and not Emulator(SQLite 数据库副本在由设备而不是模拟器生成时出现损坏)
                  Android file copy(安卓文件拷贝)
                  Android how to detect Copy event of Edittext in android(Android如何在android中检测Edittext的Copy事件)
                  Android copy image from gallery folder onto SD Card alternative folder(Android将图像从图库文件夹复制到SD卡替代文件夹)
                  Is there a tool to find unused resources in an Android project?(是否有工具可以在 Android 项目中查找未使用的资源?)
                  <legend id='PDQa8'><style id='PDQa8'><dir id='PDQa8'><q id='PDQa8'></q></dir></style></legend>
                  • <bdo id='PDQa8'></bdo><ul id='PDQa8'></ul>

                      <small id='PDQa8'></small><noframes id='PDQa8'>

                    • <i id='PDQa8'><tr id='PDQa8'><dt id='PDQa8'><q id='PDQa8'><span id='PDQa8'><b id='PDQa8'><form id='PDQa8'><ins id='PDQa8'></ins><ul id='PDQa8'></ul><sub id='PDQa8'></sub></form><legend id='PDQa8'></legend><bdo id='PDQa8'><pre id='PDQa8'><center id='PDQa8'></center></pre></bdo></b><th id='PDQa8'></th></span></q></dt></tr></i><div id='PDQa8'><tfoot id='PDQa8'></tfoot><dl id='PDQa8'><fieldset id='PDQa8'></fieldset></dl></div>

                            <tbody id='PDQa8'></tbody>
                          <tfoot id='PDQa8'></tfoot>