Description:
Getting error in debug release
Environment
"react-native-onesignal": "^3.2.4"
yarn add
RN 0.55.4
Steps to Reproduce Issue:
react-native run-android
Output:
FAILURE: Build failed with an exception.
* What went wrong:
Could not resolve all files for configuration ':app:debugCompileClasspath'.
> Could not find firebase-iid.aar (com.google.firebase:firebase-iid:12.0.1).
Searched in the following locations:
https://jcenter.bintray.com/com/google/firebase/firebase-iid/12.0.1/firebase-iid-12.0.1.aar
> Could not find firebase-common.aar (com.google.firebase:firebase-common:12.0.1).
Searched in the following locations:
https://jcenter.bintray.com/com/google/firebase/firebase-common/12.0.1/firebase-common-12.0.1.aar
> Could not find play-services-ads.aar (com.google.android.gms:play-services-ads:12.0.1).
Searched in the following locations:
https://jcenter.bintray.com/com/google/android/gms/play-services-ads/12.0.1/play-services-ads-12.0.1.aar
> Could not find firebase-auth-license.aar (com.google.firebase:firebase-auth-license:12.0.1).
Searched in the following locations:
https://jcenter.bintray.com/com/google/firebase/firebase-auth-license/12.0.1/firebase-auth-license-12.0.1.aar
android/build.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
mavenLocal()
jcenter()
google()
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url "$rootDir/../node_modules/react-native/android"
}
}
}
app/build.gradle:
buildscript {
repositories {
maven { url 'https://plugins.gradle.org/m2/' } // Gradle Plugin Portal
}
dependencies {
classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.10.0, 0.99.99]'
}
}
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply plugin: "com.android.application"
import com.android.build.OutputFile
project.ext.react = [
entryFile: "index.js"
]
apply from: "../../node_modules/react-native/react.gradle"
def enableSeparateBuildPerCPUArchitecture = false
/**
* Run Proguard to shrink the Java bytecode in release builds.
*/
def enableProguardInReleaseBuilds = false
android {
compileSdkVersion 26
buildToolsVersion "26.0.2"
defaultConfig {
applicationId "com.realm"
minSdkVersion 16
targetSdkVersion 22
versionCode 1
versionName "1.0"
ndk {
abiFilters "armeabi-v7a", "x86"
}
}
splits {
abi {
reset()
enable enableSeparateBuildPerCPUArchitecture
universalApk false // If true, also generate a universal APK
include "armeabi-v7a", "x86"
}
}
buildTypes {
release {
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
// applicationVariants are e.g. debug, release
applicationVariants.all { variant ->
variant.outputs.each { output ->
// For each separate APK per architecture, set a unique version code as described here:
// http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits
def versionCodes = ["armeabi-v7a":1, "x86":2]
def abi = output.getFilter(OutputFile.ABI)
if (abi != null) { // null for the universal-debug, universal-release variants
output.versionCodeOverride =
versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
}
}
}
}
dependencies {
compile project(':react-native-onesignal')
implementation "com.google.firebase:firebase-core:12.0.1"
implementation "com.google.android.gms:play-services-base:12.0.1"
// RNFirebase optional dependencies
implementation "com.google.firebase:firebase-messaging:12.0.1"
implementation "com.google.firebase:firebase-iid:12.0.1"
compile project(':realm')
compile fileTree(dir: "libs", include: ["*.jar"])
compile "com.android.support:appcompat-v7:26.0.2"
compile "com.facebook.react:react-native:+" // From node_modules
}
// Run this once to be able to run the application with BUCK
// puts all compile dependencies into folder libs for BUCK to use
task copyDownloadableDepsToLibs(type: Copy) {
from configurations.compile
into 'libs'
}
Can someone help me with these issues?
@rodrigofbm In your android/build.gradle
in your repositories
section, try moving google()
ABOVE jcenter()
.
It's bizarre, but we've seen this fix this particular issue.
@Nightsd01 lol it works! Thanks so much!
@Nightsd01 Thanks a lot!
Just to clarify for others who may be confused like me:
You need to swap google()
and jcenter()
in the allprojects.repositories
section, NOT the buildscript.repositories
section.
FYI cordova & android developers:
This same problem started to occur on our build yesterday and we managed to fix the build using this same trick. Thanks!
To fix the problem, move jcenter()
below the allprojects.repositories.maven
.
Most helpful comment
@rodrigofbm In your
android/build.gradle
in yourrepositories
section, try movinggoogle()
ABOVEjcenter()
.It's bizarre, but we've seen this fix this particular issue.