facebook / react-native

A framework for building native applications using React
https://reactnative.dev
MIT License
119.58k stars 24.37k forks source link

RNFirebase core module was not found natively on Android, ensure you have correctly added the RNFirebase and Firebase gradle dependencies to your `android/app/build.gradle` file #27299

Closed ducsilva closed 5 years ago

ducsilva commented 5 years ago

RNFirebase

file android/app/build.gradle apply plugin: "com.android.application" apply from: "./versionCode.gradle"

import com.android.build.OutputFile

/**

project.ext.react = [ entryFile: "index.js" ]

apply from: "../../node_modules/react-native/react.gradle"

/**

/**

android { compileSdkVersion rootProject.ext.compileSdkVersion buildToolsVersion '28.0.3'

defaultConfig {
    applicationId "io.shadowfactory.shadowfactoryapp.android"
    minSdkVersion rootProject.ext.minSdkVersion
    targetSdkVersion rootProject.ext.targetSdkVersion
    multiDexEnabled true  // needed for firestore:
    versionCode Integer.parseInt(VERSION_CODE)
    versionName "1.0"
    ndk {
        abiFilters "armeabi-v7a", "x86"
    }
}
signingConfigs {
    release {
        if (project.hasProperty('SFAPP_RELEASE_STORE_FILE')) {
            storeFile file(SFAPP_RELEASE_STORE_FILE)
            storePassword SFAPP_RELEASE_STORE_PASSWORD
            keyAlias SFAPP_RELEASE_KEY_ALIAS
            keyPassword SFAPP_RELEASE_KEY_PASSWORD
        }
    }
}
splits {
    abi {
        reset()
        enable enableSeparateBuildPerCPUArchitecture
        universalApk false  // If true, also generate a universal APK
        include "armeabi-v7a", "x86"
    }
}
packagingOptions{
    doNotStrip '*/mips/*.so'
    doNotStrip '*/mips64/*.so'
}
flavorDimensions "2.10.0"
productFlavors {
    ar {
        resValue 'string', 'app_name', 'ShadowFactory-ar'
        buildConfigField 'String', 'VR_PLATFORM', '"GVR"' //default to GVR
    }
    gvr {
        resValue 'string', 'app_name', 'ShadowFactory-gvr'
        buildConfigField 'String', 'VR_PLATFORM', '"GVR"'
    }
}
buildTypes {
    release {
        minifyEnabled enableProguardInReleaseBuilds
        signingConfig signingConfigs.release
        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 { implementation fileTree(dir: "libs", include: ["*.jar"]) implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}" implementation "com.facebook.react:react-native:+" // From node_modules implementation 'com.facebook.android:facebook-android-sdk:4.34.0' implementation project(':react-native-fbsdk') implementation project(':react-native-firebase') implementation project(':arcore_client') // remove this if AR not required implementation project(':gvr_common') implementation project(path: ':viro_renderer') implementation project(path: ':react_viro') implementation 'com.google.android.exoplayer:exoplayer:2.7.3' implementation 'com.google.protobuf.nano:protobuf-javanano:3.0.0-alpha-7' implementation 'com.amazonaws:aws-android-sdk-core:2.2.+' implementation 'com.amazonaws:aws-android-sdk-ddb:2.2.+' implementation 'com.amazonaws:aws-android-sdk-ddb-mapper:2.2.+' implementation 'com.amazonaws:aws-android-sdk-cognito:2.2.+' implementation 'com.amazonaws:aws-android-sdk-cognitoidentityprovider:2.2.+' implementation project(':react-native-languages') implementation project(':react-native-view-shot') implementation project(':react-native-vector-icons') implementation "com.google.android.gms:play-services-base:16.0.1" implementation 'com.google.android.gms:play-services-auth:16.0.1' implementation 'com.google.firebase:firebase-core:16.0.4' implementation 'com.google.firebase:firebase-auth:16.0.4' implementation "com.google.firebase:firebase-config:16.0.1" implementation "com.google.firebase:firebase-messaging:17.3.3" implementation "com.google.firebase:firebase-storage:16.0.2" implementation "com.google.firebase:firebase-firestore:17.1.0" implementation 'me.leolin:ShortcutBadger:1.1.21@aar' // <-- Add this line if you wish to use badge on Android implementation(project(":react-native-google-signin")) { exclude group: "com.google.android.gms" // very important } implementation project(':react-native-maps') implementation project(':react-native-svg') implementation project(':react-native-video') implementation project(':react-native-orientation') implementation project(':react-native-share') implementation project(':react-native-gesture-handler') implementation 'com.android.support.constraint:constraint-layout:1.1.3' implementation project(':react-native-linear-gradient') }

// 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' }

apply plugin: 'com.google.gms.google-services' com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true

file android/build.gradle buildscript { ext { buildToolsVersion = "27.0.3" minSdkVersion = 23 compileSdkVersion = 27 targetSdkVersion = 25 supportLibVersion = "27.1.1" } repositories { google() jcenter() maven { url 'https://maven.google.com/' name 'Google' } } dependencies { classpath 'com.android.tools.build:gradle:3.2.1'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    classpath 'com.google.gms:google-services:4.1.0' // google-services plugin
}

}

allprojects { repositories { mavenLocal() google() maven { // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm url "$rootDir/../node_modules/react-native/android" } maven { url 'https://maven.google.com/' name 'Google' } jcenter() } }

subprojects { afterEvaluate {project -> if (project.hasProperty("android")) { android { compileSdkVersion 28 buildToolsVersion '28.0.3' } configurations.all { resolutionStrategy { force 'com.google.android.gms:play-services-gcm:16.1.0' force 'com.google.android.gms:play-services-location:16.0.1' force 'com.google.android.gms:play-services-basement:16.2.0' force 'com.google.android.gms:play-services-auth:16.0.1' force 'com.google.android.gms:play-services-stats:16.0.1' force 'com.google.android.gms:play-services-base:16.0.1' } } } } }

task wrapper(type: Wrapper) { gradleVersion = '4.4' distributionUrl = distributionUrl.replace("bin", "all") }

"react": "16.8.3", "react-native": "0.59.9", "react-native-firebase": "^4.3.8",

Does anyone help me resolve it? i don't know why don't it work?

react-native-bot commented 5 years ago

Thanks for submitting your issue. Can you take another look at your description and make sure the issue template has been filled in its entirety?

👉 Click here if you want to take another look at the Bug Report issue template.

dulmandakh commented 5 years ago

Please make sure that you followed setup instruction and did it correctly. I'm closing this because it's not RN but RNFirebase related issue. Thanks