无法解析符号' Auth'在Android工作室进行谷歌整合

时间:2015-11-18 06:26:52

标签: android android-studio gradle google-signin

我是androidstudio的新手。我在eclipse中完成了google的集成,但在工作室里遇到了问题。 我正在逐步跟踪此网站:https://developers.google.com/identity/sign-in/android/sign-in?configured=true

但我遇到了问题。我收到一个错误,无法解析符号' Auth'我需要API,也无法解析' SignInButton',请参阅代码:

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import com.google.android.gms.auth.api.Auth;
import com.google.android.gms.auth.api.signin.GoogleSignInOptions;
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.SignInButton;
import com.google.android.gms.common.api.GoogleApiClient;


public class MainActivity extends AppCompatActivity implements GoogleApiClient.OnConnectionFailedListener {
GoogleSignInOptions gso;
    GoogleApiClient mGoogleApiClient;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN).requestEmail().build();
       mGoogleApiClient = new GoogleApiClient.Builder(this)
    .enableAutoManage(this /* FragmentActivity */, this /* OnConnectionFailedListener */)
    .addApi(Auth.GOOGLE_SIGN_IN_API, gso)
    .build();
    }

    @Override
    public void onConnectionFailed(ConnectionResult connectionResult) {

    }
}

这是我的项目节目:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0'
        classpath 'com.google.gms:google-services:1.5.0-beta2'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

这是我的应用程序gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "com.creaa.admin.googlesignin"
        minSdkVersion 11
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.0'
    apply plugin: 'com.google.gms.google-services'

}

请帮帮我。

8 个答案:

答案 0 :(得分:61)

  • apply plugin: 'com.google.gms.google-services'放在apply plugin: 'com.android.application'下方。

  • compile 'com.google.android.gms:play-services-auth:8.3.0'块内添加dependencies。这将为您的项目添加相关的依赖项。

答案 1 :(得分:6)

使用最新版本(2.2.2),为了解决此问题,我必须做的是将下面的行添加为我的app/build.gradle文件中的依赖项

compile 'com.google.android.gms:play-services-auth:9.8.0'

希望它有所帮助。

答案 2 :(得分:1)

Firebase 身份验证和Google登录的依赖项添加到您的应用级 build.gradle 文件中:

compile 'com.google.firebase:firebase-auth:10.0.1'
compile 'com.google.android.gms:play-services-auth:10.0.1'

答案 3 :(得分:1)

我遇到同样的问题,添加编译'com.google.android.gms:play-services-auth:10.0.1 (您项目的最新版本)你的应用程序级别gradle文件。

答案 4 :(得分:0)

尝试将apply plugin:'com.google.gms.google-services'从依赖项迁移到gradle文件的顶部,就在apply plugin:'com.android.application'。

编辑:

确保您已从SDK Manager安装了Extras / Google Repository,并将编译'com.google.android.gms:play-services:8.3.0'添加到您的依赖范围。

答案 5 :(得分:0)

我遇到了这个问题。我通过在app level gradle文件中添加这一行来解决它:

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

(位于文件底部(重要))

此应用程序级别依赖项中的这一行

compile 'com.google.android.gms:play-services-auth:11.0.4'

(最新版本,当我写这个答案的时候)

这里是link to the documentation

答案 6 :(得分:0)

将此添加到您的应用程序gradle的依赖项块中

implementation 'com.google.android.gms:play-services-auth:16.0.0'

答案 7 :(得分:0)

  1. 打开您的ANDROID STUDIO
  2. 打开工具
  3. 选择FIREBASE
  4. 选择身份验证
  5. ,然后点击“将Firebase身份验证添加到您的应用”按钮。

完成!

(注意:请确保您已连接到互联网。)