1

我想使用 firebase 电话身份验证,所以我试图添加 react-native-firebase 之类的......我将它添加到 android/app/build.gradle

    dependencies {
    compile project(':react-native-config')
    compile(project(':react-native-firebase')) {
        transitive = false
    }

    compile fileTree(dir: "libs", include: ["*.jar"])
    compile "com.android.support:appcompat-v7:23.0.1"
    compile "com.facebook.react:react-native:+"  // From node_modules

    // Firebase dependencies
    compile "com.google.android.gms:play-services-base:11.6.0"
    compile "com.google.firebase:firebase-core:11.6.0"
    compile "com.google.firebase:firebase-auth:11.6.0"
}

task copyDownloadableDepsToLibs(type: Copy) {
    from configurations.compile
    into 'libs'
}
apply plugin: 'com.google.gms.google-services'

并在项目级别build.gradle

 buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.google.gms:google-services:3.1.1'
        classpath 'com.android.tools.build:gradle:2.2.3'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        mavenLocal()
        jcenter()
        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'
        }

    }
}

我也做了 react-native 链接,但它没有加载..

你能帮我解决我在这里想念的东西吗...

在此处输入图像描述

4

2 回答 2

1

它的回复较晚,但对其他人有帮助。您需要在 getPackages 内的 MainApplication.java 文件中添加 RNFirebasePackage 包。

 public class MainApplication extends Application implements ReactApplication {



  private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
    @Override
    public boolean getUseDeveloperSupport() {
      return BuildConfig.DEBUG;
    }

    @Override
    protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(
          new MainReactPackage(),
            new RNFirebasePackage()
      );
    }

    @Override
    protected String getJSMainModuleName() {
      return "index";
    }
  };

  @Override
  public ReactNativeHost getReactNativeHost() {
    return mReactNativeHost;
  }

  @Override
  public void onCreate() {
    super.onCreate();
    SoLoader.init(this, /* native exopackage */ false);
  }
}

有用的答案

于 2018-01-05T14:42:37.117 回答
0

我的问题是我试图将 React-native-firebase 与 EXPO 一起使用,这是不可能的。

于 2018-03-26T17:08:17.020 回答