【问题标题】:firebase databasereference gives no virtual method errorfirebase databasereference 没有给出虚拟方法错误
【发布时间】:2017-06-09 01:17:48
【问题描述】:

我正在尝试通过获取数据库引用来添加 firebase 数据库一些信息,但它给出了休闲错误:

原因:java.lang.NoSuchMethodError: No virtual method zzckb()Z in class Lcom/google/firebase/FirebaseApp;或其超类(“com.google.firebase.FirebaseApp”的声明出现在 /data/app/com.bogroup.ucuncuprogram-1/split_lib_dependencies_apk.apk:classes25.dex 中)

我的 java 代码是这样的:

package com.bogroup.ucuncuprogram;

import android.content.Context;
import android.widget.Toast;
import com.firebase.client.Firebase;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import static com.facebook.FacebookSdk.getApplicationContext;

public class database{

    private Firebase mRootRef;
    private DatabaseReference mDatabase;


    public void kullanicikontrol(String kullaniciadi){
        mDatabase = FirebaseDatabase.getInstance().getReference();
        mDatabase.child("users").child(kullaniciadi).setValue("9999999");
        //chieldref.setValue("9999999");

        Context context = getApplicationContext();
        CharSequence text = kullaniciadi;
        int duration = Toast.LENGTH_LONG;

        Toast toast = Toast.makeText(context, text, duration);
        toast.show();
    }
}

可能是什么问题,提前谢谢。

我的应用程序 build.grade 就像休闲:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.3"
    defaultConfig {
        applicationId "com.bogroup.ucuncuprogram"
        minSdkVersion 21
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    packagingOptions {
        exclude 'META-INF/NOTICE' // will not include NOTICE file
        exclude 'META-INF/LICENSE' // will not include LICENSE file
        // as noted by @Vishnuvathsan you may also need to include
        // variations on the file name. It depends on your dependencies.
        // Some other common variations on notice and license file names
        exclude 'META-INF/notice'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/license'
        exclude 'META-INF/license.txt'
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.0.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.google.firebase:firebase-core:9.4.0'
    compile 'com.google.firebase:firebase-auth:9.4.0'
    compile 'com.google.firebase:firebase-database:9.4.0'
    compile 'com.google.firebase:firebase-crash:9.4.0'
    compile 'com.firebase:firebase-client-android:2.2.4'
    //compile 'com.google.firebase:firebase-storage:9.4.0'
    compile 'com.firebaseui:firebase-ui:0.4.4'
    compile 'com.google.android.gms:play-services-auth:9.4.0'
    compile 'com.android.support:animated-vector-drawable:25.0.0'
    compile 'com.android.support:design:25.0.0'
    compile 'com.android.support:support-v4:25.0.0'
    compile 'com.android.support:cardview-v7:25.0.0'
    compile 'com.android.support:customtabs:25.0.0'
    compile 'com.android.support:recyclerview-v7:25.0.0'
    compile 'com.firebaseui:firebase-ui-auth:1.2.0'
    compile 'com.squareup.picasso:picasso:2.5.2'
    //compile 'com.android.support:customtabs:25.2.0'
    testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'

【问题讨论】:

  • 你的 firebase gradle 版本升级到 11.0.0 了吗?
  • 发布你的应用模块 build.gradle
  • 编辑了我的帖子以添加 build.grade 文件。
  • firebase-ui:0.4.4 ... 那肯定需要更新
  • 除了 cricket 关于一致版本的回答之外,将旧版 SDK 与新版 SDK 混合还存在潜在问题。删除 com.firebase:firebase-client-android:2.2.4 并仅使用新的 SDK 库 com.google.firebase:firebase-* 会更安全。

标签: java android firebase firebase-realtime-database


【解决方案1】:

您的 Firebase 和 Firebase UI 版本需要line up according to the table on their Github Page

作为参考,您是否选择升级(我强烈推荐)。

FirebaseUI 版本
1.2.0

Firebase/Play 服务版本
10.2.0

简单的方法

ext {
    googlePlayVer = "10.2.0"
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.0.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'

    // For example
    compile "com.google.firebase:firebase-core:${googlePlayVer}"
    compile "com.google.firebase:firebase-auth:${googlePlayVer}"
    compile "com.google.firebase:firebase-database:${googlePlayVer}"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-12
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 2018-02-07
    • 1970-01-01
    • 1970-01-01
    • 2020-10-28
    相关资源
    最近更新 更多