在本机中使用地图时出错

The*_*ang 6 android google-maps reactjs react-native

我想在我的本机应用中使用地图.所以我安装了airbnb的react-native-maps,但是当我尝试构建应用程序时,它总是显示此错误"Could not find method compileOnly() for arguments [com.facebook.react:react-native:+] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.",我已经设置了构建gradle,设置gradle和MainApllication.有人可以帮我吗? 我的Build.Gradle

dependencies {
    compile(project(':react-native-maps')){
        exclude group: 'com.google.android.gms', module: 'play-services-base'
        exclude group: 'com.google.android.gms', module: 'play-services-maps'
    }
    compile 'com.google.android.gms:play-services-base:10.0.1'
    compile 'com.google.android.gms:play-services-maps:10.0.1'
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile "com.android.support:appcompat-v7:23.0.1"
    compile "com.facebook.react:react-native:+"  // From node_modules
}
Run Code Online (Sandbox Code Playgroud)

我的Setting.Gradle

rootProject.name = 'MapDemo'
include ':react-native-maps'
project(':react-native-maps').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-maps/lib/android')
include ':app'
Run Code Online (Sandbox Code Playgroud)

我的MainApplication.Java

import com.airbnb.android.react.maps.MapsPackage;
 @Override
    protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(
          new MainReactPackage(),
           new MapsPackage()
      );
    }
Run Code Online (Sandbox Code Playgroud)

Sar*_*ala 5

我遇到了类似的问题,从这里找到了解决方案:

导航到node_modules/react-native-maps/lib/android/build.gradle,然后更改compileOnlyprovidedimplementationcompile.

我希望这有帮助.