bugfix> android > 投稿

Firebase Crashlyticsを追加しようとしています。 Firebase Crashlyticsチュートリアルは非常に簡単です。 https://firebase.google.com/docs/crashlytics/get-started?authuser=0

リポジトリ(ビルドスクリプトとすべてのプロジェクト)、およびクラスパスと依存関係の実装を既に追加しています。すべてチュートリアルと同じです。しかし、「io.fabric」プラグイン(適用プラグイン:「io.fabric」)を適用し、Android Studioで「同期」を押すと、次のエラーが表示されます。

A problem occurred evaluating project ':app'.
> Failed to apply plugin [id 'io.fabric']
   > No such property: verboseGradlePlugin for class: java.lang.String

「apply plugin: 'com.android.application'」の後にプラグインを適用しています。
FabricプラグインをAndroid Studioに追加しようとしました-助けにはなりませんでした。
すべてのプラグインバージョンを1.24.0まで試しました。 (現在は1.25.4)
キャッシュを無効にし、Android Studioを再起動しました。
「fabric.properties」ファイルと「crashlytics.properties」ファイルをアプリフォルダーに追加しようとしました。
-DverboseGradlePlugin = falseを渡すか、「true」でgradleの「build」タスクに渡そうとしました。

Gradleは「io.fabric」プラグインを知っていますが、欠落している「verboseGradlePlugin」プロパティを見つけようとしています。私はグーグルでそのような問題に関する情報を見つけていません。

誰かがすでに同じ問題に直面しているか、これを解決するための提案がありますか?

UPD:
私のプロジェクトレベルbuild.gradle 
私のアプリレベルbuild.gradle

Gradleバージョン-4.4
Android gradleプラグインバージョン-3.1.2

回答 3 件
  • ステップ1: あなたのプロジェクトレベル build.gradle追加:

     maven {
            url 'https://maven.fabric.io/public'
        }
    
    

    注意:この追加は、次のようにallprojects gradleスクリプトではなく、buildscript内に厳密に貼り付ける必要があります。

    buildscript {
    repositories {
        jcenter()
        google()
        maven {
            url 'https://maven.fabric.io/public'
        }
    }
    
    

    次に、io.fabricツールを同じgradle(build.gradle)の依存関係に追加します

    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
        classpath 'com.google.gms:google-services:3.2.1'
        classpath 'io.fabric.tools:gradle:1.25.4'
    }
    
    

    これが完了するとすぐに、同期する 次のステップに進む前に、あなたのgradle.Youはstep1のためにこのようなものを持っている必要があります

    Step2:あなたのアプリレベル build.gradle add

    apply plugin: 'io.fabric'
    
    

    そしてあなたの依存関係で:

    dependencies {
    // ...
    implementation 'com.crashlytics.sdk.android:crashlytics:2.9.3'
    
    

    }

    もう一度同期して、プロジェクトを再構築して実行します。

    NB:アプリレベルを操作する前に、プロジェクトレベルbuild.gradleを操作した直後に同期します。

    詳細はこちら

  • 私はまったく同じ問題を抱えていました。このエラーは、プロジェクトレベルのbuild.gradleの余分なプロパティ「crashlytics」が原因で生成され、競合が発生します。

    余分なプロパティ「crashlitycs」を「crashlyticsVersion」または同様のものに変更するだけで、エラーが消えます。

    同様のエラーを回避するために、追加のプロパティで接尾辞「Version」を使用することもお勧めします。

  • あなたのプロジェクトgradleに置くべきです

    buildscript {
        repositories {
            ...
            maven {url 'https://maven.fabric.io/public'}
        }
       ...
    }
    
    

    一方、上部のアプリgradleファイルで

    apply plugin: 'io.fabric'
    
    

    および依存関係として

    implementation 'com.crashlytics.sdk.android:crashlytics:2.9.3'
    
    

あなたの答え