2017-06-01 37 views
0

我想在我的遊戲上添加Google的登錄。 要做到這一點,我決定使用FirebaseUI(https://github.com/firebase/FirebaseUI-Android)。但我有問題來同步我的Gradle文件。 我正在reciving錯誤: 錯誤:無法解析:com.firebaseui:火力-UI-AUTH:1.2.0錯誤:未能解決:com.firebaseui:firebase-ui-auth:1.2.0在libgdx上build.gradle

這裏是我的build.gradle(項目)

buildscript { 
     repositories { 
      mavenLocal() 
      mavenCentral() 
      maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } 
      maven { url 'https://maven.fabric.io/public'} 
      jcenter() 
     } 
     dependencies { 
      classpath 'com.android.tools.build:gradle:2.3.2' 
      classpath 'com.google.gms:google-services:3.1.0' 
     } 
    } 

    allprojects { 
     apply plugin: "eclipse" 
     apply plugin: "idea" 

     version = '1.0' 
     ext { 
      appName = "mystore" 
      gdxVersion = '1.9.6' 
      roboVMVersion = '2.3.1' 
      box2DLightsVersion = '1.4' 
      ashleyVersion = '1.7.0' 
      aiVersion = '1.8.0' 
     } 

     repositories { 
      mavenLocal() 
      mavenCentral() 
      maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } 
      maven { url "https://oss.sonatype.org/content/repositories/releases/" } 
      maven { url 'https://maven.fabric.io/public'} 
     } 
    } 

    project(":android") { 
     apply plugin: "android" 

     configurations { natives } 

     dependencies { 
      compile project(":core") 
      compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion" 
      natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi" 
      natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a" 
      natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a" 
      natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86" 
      natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64" 
      compile "com.firebaseui:firebase-ui-auth:1.2.0" // Failed to resolve 
     } 
    } 

    project(":core") { 
     apply plugin: "java" 


     dependencies { 
      compile "com.badlogicgames.gdx:gdx:$gdxVersion" 
     } 
    } 

    tasks.eclipse.doLast { 
     delete ".project" 
    } 

這裏我build.grade(模塊:機器人)

android { 
    buildToolsVersion "25.0.3" 
    compileSdkVersion 25 
    sourceSets { 
     main { 
      manifest.srcFile 'AndroidManifest.xml' 
      java.srcDirs = ['src'] 
      aidl.srcDirs = ['src'] 
      renderscript.srcDirs = ['src'] 
      res.srcDirs = ['res'] 
      assets.srcDirs = ['assets'] 
      jniLibs.srcDirs = ['libs'] 
     } 

     instrumentTest.setRoot('tests') 
    } 
    packagingOptions { 
     exclude 'META-INF/robovm/ios/robovm.xml' 
     exclude 'META-INF/LICENSE' 
     exclude 'META-INF/LICENSE-FIREBASE.txt' 
     exclude 'META-INF/NOTICE' 
    } 
    defaultConfig { 
     applicationId "br.com.edney.mystore" 
     minSdkVersion 16 
     targetSdkVersion 25 
    } 
} 


// called every time gradle gets executed, takes the native dependencies of 
// the natives configuration, and extracts them to the proper libs/ folders 
// so they get packed with the APK. 
task copyAndroidNatives() { 
    file("libs/armeabi/").mkdirs(); 
    file("libs/armeabi-v7a/").mkdirs(); 
    file("libs/arm64-v8a/").mkdirs(); 
    file("libs/x86_64/").mkdirs(); 
    file("libs/x86/").mkdirs(); 

    configurations.natives.files.each { jar -> 
     def outputDir = null 
     if(jar.name.endsWith("natives-arm64-v8a.jar")) outputDir = file("libs/arm64-v8a") 
     if(jar.name.endsWith("natives-armeabi-v7a.jar")) outputDir = file("libs/armeabi-v7a")   
     if(jar.name.endsWith("natives-armeabi.jar")) outputDir = file("libs/armeabi") 
     if(jar.name.endsWith("natives-x86_64.jar")) outputDir = file("libs/x86_64") 
     if(jar.name.endsWith("natives-x86.jar")) outputDir = file("libs/x86") 
     if(outputDir != null) { 
      copy { 
       from zipTree(jar) 
       into outputDir 
       include "*.so" 
      } 
     } 
    } 
} 

task run(type: Exec) { 
    def path 
    def localProperties = project.file("../local.properties") 
    if (localProperties.exists()) { 
     Properties properties = new Properties() 
     localProperties.withInputStream { instr -> 
      properties.load(instr) 
     } 
     def sdkDir = properties.getProperty('sdk.dir') 
     if (sdkDir) { 
      path = sdkDir 
     } else { 
      path = "$System.env.ANDROID_HOME" 
     } 
    } else { 
     path = "$System.env.ANDROID_HOME" 
    } 

    def adb = path + "/platform-tools/adb" 
    commandLine "$adb", 'shell', 'am', 'start', '-n', 'br.com.mystore/br.com.mystore.AndroidLauncher' 
} 

// sets up the Android Eclipse project, using the old Ant based build. 
eclipse { 
    // need to specify Java source sets explicitly, SpringSource Gradle Eclipse plugin 
    // ignores any nodes added in classpath.file.withXml 
    sourceSets { 
     main { 
      java.srcDirs "src", 'gen' 
     } 
    } 

    jdt { 
     sourceCompatibility = 1.6 
     targetCompatibility = 1.6 
    } 

    classpath { 
     plusConfigurations += [ project.configurations.compile ]   
     containers 'com.android.ide.eclipse.adt.ANDROID_FRAMEWORK', 'com.android.ide.eclipse.adt.LIBRARIES'  
    } 

    project { 
     name = appName + "-android" 
     natures 'com.android.ide.eclipse.adt.AndroidNature' 
     buildCommands.clear(); 
     buildCommand "com.android.ide.eclipse.adt.ResourceManagerBuilder" 
     buildCommand "com.android.ide.eclipse.adt.PreCompilerBuilder" 
     buildCommand "org.eclipse.jdt.core.javabuilder" 
     buildCommand "com.android.ide.eclipse.adt.ApkBuilder" 
    } 
} 

// sets up the Android Idea project, using the old Ant based build. 
idea { 
    module { 
     sourceDirs += file("src"); 
     scopes = [ COMPILE: [plus:[project.configurations.compile]]]   

     iml { 
      withXml { 
       def node = it.asNode() 
       def builder = NodeBuilder.newInstance(); 
       builder.current = node; 
       builder.component(name: "FacetManager") { 
        facet(type: "android", name: "Android") { 
         configuration { 
          option(name: "UPDATE_PROPERTY_FILES", value:"true") 
         } 
        } 
       } 
      } 
     } 
    } 
} 
apply plugin: "com.google.gms.google-services" 

回答

0

沒有問題firebase-ui-auth神器的Android模塊的注射通過根build.gradle獲得該文件。

在庫添加jcenter()所有項目

repositories { 
    mavenLocal() 
    mavenCentral() 
    maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } 
    maven { url "https://oss.sonatype.org/content/repositories/releases/" } 
    maven { url 'https://maven.fabric.io/public'} 
    jcenter() 
} 

同步&構建。

+1

build.gradle的錯誤位置,我會在回家時試試這個解決方案。 thx @Abhishek雅利安的幫助 –

+0

現在一切工作正常! thx爲您的幫助和您的時間! –

0

添加在您的app/build.gradle文件中添加對庫的一個依賴

dependencies { 
    // FirebaseUI Database only 
    compile 'com.firebaseui:firebase-ui-database:1.2.0' 

    // FirebaseUI Auth only 
    compile 'com.firebaseui:firebase-ui-auth:1.2.0' 

    // FirebaseUI Storage only 
    compile 'com.firebaseui:firebase-ui-storage:1.2.0' 

    // Single target that includes all FirebaseUI libraries above 
    compile 'com.firebaseui:firebase-ui:1.2.0' 
} 

您需要在項目級gradle上配置firebase。

buildscript { 

    dependencies { 
     // Add Classpath here.. 
     classpath 'com.google.gms:google-services:3.0.0' 
    } 
} 

還在最後一行(gradle代碼的底部)添加app模塊gradle中的插件。

apply plugin: 'com.google.gms.google-services' 

不要忘記添加google-services.json文件在app文件夾。 你可以從https://console.firebase.google.com

+0

THX的幫助,但我得到了同樣的錯誤: 錯誤:(141,13)無法解析:com.firebaseui:火力的UI存儲:1.2.0 錯誤:(144,13 )解決失敗:com.firebaseui:firebase-ui:1.2.0 錯誤:(135,13)無法解析:com.firebaseui:firebase-ui-database:1.2.0 錯誤:(138,13)Failed解決:com.firebaseui:firebase-ui-auth:1.2.0 –

+0

@edneyreis查看更新的答案。 –

+0

thx再次尋求幫助。 我試過classpath'com.google.gms:google-services:3.0.0' ,但是無法解決錯誤continue = /。 –

相關問題