Android FirebaseUIのコードを記述しようとしていますが、Androidプロジェクトで認証しますが、過去2日間から現在のコードでエラーが発生し、修正方法がわかりません。一生懸命努力しましたが、正しい方法で何も起こりませんでした。
ここに私のbuild.gradle(project:FriendlyChat)があります
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
mavenLocal()
}
dependencies {
classpath 'com.Android.tools.build:gradle:2.2.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath 'com.google.gms:google-services:3.0.0'
}
}
allprojects {
repositories {
jcenter()
mavenLocal()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
ここに私のbuild.gradle(Module:app)があります
apply plugin: 'com.Android.application'
apply plugin: 'com.google.gms.google-services'
repositories {
mavenLocal()
flatDir {
dirs 'libs'
}
}
Android {
compileSdkVersion 24
buildToolsVersion "24.0.1"
defaultConfig {
applicationId "com.google.firebase.udacity.friendlychat"
minSdkVersion 16
targetSdkVersion 24
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
packagingOptions {
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE-FIREBASE.txt'
exclude 'META-INF/NOTICE'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
// Displaying images
compile 'com.Android.support:design:24.2.1'
compile 'com.Android.support:appcompat-v7:24.2.1'
compile 'com.github.bumptech.glide:glide:3.6.1'
compile 'com.google.firebase:firebase-database:11.0.4'
compile 'com.google.firebase:firebase-auth:11.0.4'
compile 'com.google.Android.gms:play-services-auth:11.4.0'
testCompile 'junit:junit:4.12'
}
Com.google.Android.gms play-services-auth:11.4.0の解決に失敗しました。
maven { url "https://maven.google.com" }
をルートレベルbuild.gradle
ファイルに追加します
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
このMavenリポジトリは 11.2.0以降 から開始する必要があります。
google()
ショートカットを使用することもできますが、使用する前に requirements を確認してください。
また、異なるバージョンを使用しているので注意してください。 同じバージョンを使用します。
compile 'com.google.firebase:firebase-database:11.0.4'
compile 'com.google.firebase:firebase-auth:11.0.4'
compile 'com.google.Android.gms:play-services-auth:11.4.0'
UPDATE
Firebase Android SDKおよびGoogle Play Servicesライブラリ 現在、独立したバージョン番号があります 。より頻繁で柔軟な更新が可能です。 Google Playサービスのgradleプラグインのバージョンを最新バージョン(少なくとも3.3.1)に更新します。
classpath 'com.google.gms:google-services:4.0.1'
ライブラリを 最新バージョン に更新します。
「build.gradle」ファイルにgoogle()
リポジトリを追加します。このgradleメソッドはmaven { url "https://maven.google.com" }
と同等です。
repositories {
jcenter()
google()
}
これをプロジェクトレベルのgradleファイルに追加します
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
このエラーは、Google Play Services 11.4.0がAndroidスタジオにインストールされていないことを意味します。
これを修正するには、依存関係のバージョンをAndroidスタジオにインストールされているものに変更する必要があります。
このために行く:プロジェクト構造->プロジェクト設定->モジュール->依存関係
ここで+記号をクリックします。目的の依存関係を見つけます。ここでバージョンを確認できます。ここからプロジェクトに依存関係を追加することもできます。
SDKマネージャーからGoogle PlayサービスSDKツールを更新し、最新バージョンを使用することを常にお勧めします。
私はここで同じ問題に直面し、「ファイル>>設定>>ビルド、実行、展開>> Gradle >>オフライン作業」のgradleオフライン作業オプションを無効にする必要がありました。
最上位の依存関係のgradle設定を変更する
//すべてのサブプロジェクト/モジュールに共通の構成オプションを追加できる最上位ビルドファイル。
buildscript {
repositories {
jcenter()
mavenLocal()
}
dependencies {
classpath 'com.Android.tools.build:gradle:2.3.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath 'com.google.gms:google-services:3.0.0'
}
}
allprojects {
repositories {
jcenter()
mavenLocal()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
私の場合、私はgradleオフラインモードを有効にしました。そのため、そのバージョンのplay-serviceのキャッシュファイルが見つからないか、解決できません。オンラインに戻すと、すべてが正常になりました。
Android Studio->>ファイル->> Gradle->>オフライン->>オフ
Firebaseから doc :
// ADD THIS AT THE BOTTOM
apply plugin: 'com.google.gms.google-services'
Bottomこの行の位置nottop(適用プラグインの下: 'com .Android.application ')。
最上位の依存関係のgradle設定を変更する
このファイルを開く-> build.gradle(Project:*****)
このコードと過去
buildscript {
repositories {
mavenLocal()
mavenCentral()
maven {
url "https://maven.google.com"
}
jcenter()
google()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.0.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
google()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
または単に変更する
classpath 'com.Android.tools.build:gradle:2.2.2'
に
classpath 'com.Android.tools.build:gradle:3.0.1'
Android studio 3.2以下の手順に従ってください。
1.キャッシュを無効にし、オプションを再起動します。ファイル->無効化/再起動
次の起動時にライブラリを同期します。
Mavenにアクセスして最新バージョンを確認できます
https://mvnrepository.com/artifact/com.google.Android.gms/play-services
次に、maven {URL " https://maven.google.com "}をルートレベルのbuild.gradleファイルに追加します
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
私の場合、google()
リポジトリがすでにインストールされています。 Android Studioを再起動するまで依存関係を解決できませんでした。私の推測では、Charlesをその日のうちに早く開いたときからのプロキシ設定が残っているために解決できなかったのでしょう。