任何看到以下内容的人都是正确答案,我已正确设置了所有内容。 我仍然不知道问题是什么。 我用facebook登录,用它来创建一个firebaseuser对象。 然后发送以下作为测试数据。 我发现这是一个间歇性的问题。从设备卸载应用程序并重新部署通常可以解决问题。 非常奇怪
我实际上正在努力让这个例子起作用。
如此基本..设定价值......
FirebaseDatabase database = FirebaseDatabase.getInstance();
Log.d(TAG, "db ref: "+database.getReference());
DatabaseReference myRef = database.getReference("message");
myRef.setValue("Hello, World!");
当我进入数据库控制台时,我无法看到我发送的值。 我的日志正在返回对数据库的引用。 为了安全起见,我还将我的规则设定为公开。
任何想法我做错了什么?
答案 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版本
希望这个答案有所帮助