基本Firebase数据库保存

时间:2016-05-24 18:25:14

标签: android firebase firebase-realtime-database

任何看到以下内容的人都是正确答案,我已正确设置了所有内容。 我仍然不知道问题是什么。 我用facebook登录,用它来创建一个firebaseuser对象。 然后发送以下作为测试数据。 我发现这是一个间歇性的问题。从设备卸载应用程序并重新部署通常可以解决问题。 非常奇怪

我实际上正在努力让这个例子起作用。

如此基本..设定价值......

FirebaseDatabase database = FirebaseDatabase.getInstance();
Log.d(TAG, "db ref: "+database.getReference());
DatabaseReference myRef = database.getReference("message");
myRef.setValue("Hello, World!");

当我进入数据库控制台时,我无法看到我发送的值。 我的日志正在返回对数据库的引用。 为了安全起见,我还将我的规则设定为公开。

任何想法我做错了什么?

2 个答案:

答案 0 :(得分:3)

  

实际上你正在引用一个逻辑上不存在的孩子'消息',

如果您想为数据库的根命名,只需按照步骤

DatabaseReference myRef1 = FirebaseDatabase.getInstance().getReference(); //Getting root reference
myRef1.setValue("Hello, World!");

如果您想在database中为您的孩子提供一些价值,请确保您的孩子在database

DatabaseReference myRef1 = FirebaseDatabase.getInstance().getReference(); //Getting root reference
DatabaseReference myRef = myRef1.child("message"); //Write your child reference if any
myRef.setValue("Hello, World!");

overwrite孩子的价值{'1}}改为'Hello World'

转到Firebase console并创建一个项目并为其提供一个有效的packageName,您将使用该名称。并下载google-service.json 文件,并将此视图添加到app folder,方法是将Android视图更改为项目视图。

将这些行添加到Project:Gradle

dependencies {
    classpath 'com.google.gms:google-services:3.0.0'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

将这些添加到App:Gradle

dependencies {
    compile 'com.google.firebase:firebase-core:9.0.0'
    compile 'com.google.firebase:firebase-database:9.0.0'
}

// ADD THIS AT THE BOTTOM OF YOUR APP GRADLE

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

注意:请覆盖数据库中的规则。如果您没有实施登录身份验证。

{
  "rules": 
   {
    ".read": true,
    ".write": true,
   }
}
  

在Application或onCreate of Activity

中添加此行
Firebase.setAndroidContext(this);

答案 1 :(得分:0)

似乎,我找到了答案。 它对我有帮助!

我在android studio 1.5之前使用过 这就是为什么(可能不是)但我无法将所需的firebase库升级到9.0.2 这段时间我一直使用9.0.0

首先,我将我的android工作室升级到更新的稳定版本2.2,然后将依赖项的版本更新为下一个版本:

compile 'com.google.firebase:firebase-core:9.0.2'
compile 'com.google.firebase:firebase-auth:9.0.2'
compile 'com.google.firebase:firebase-database:9.0.2'

现在所有的值都从android app保存到数据库。

做两件事: 1.更新android studio到最后的稳定版本 2.更新firebase所需的libs版本

希望这个答案有所帮助