Reputation: 548
Anyone looking at this the below is the correct answer and I had everything setup correctly. I still dont no what the issue is. I was loggin in with facebook, using that to create a firebaseuser object. and then sending the below as test data. I've found it to be an intermittent issue. Uninstalling the app from the device and redeploying often fixes the issue. very odd
Im actually struggling to get the example to work.
So basic.. set value....
FirebaseDatabase database = FirebaseDatabase.getInstance();
Log.d(TAG, "db ref: "+database.getReference());
DatabaseReference myRef = database.getReference("message");
myRef.setValue("Hello, World!");
When I go into the database console I cant see the values I sent. My log is returning a reference to the db though. I've also set my rules up as public to be on the safe side.
Any ideas what I'm doing wrong?
Upvotes: 2
Views: 16222
Reputation: 19
Try including the URL of the database.
String strURL="https://testfirebase-0123-default-rtdb.asia-southeast1.firebasedatabase.app/";
FirebaseDatabase database = FirebaseDatabase.getInstance(strURL);
Upvotes: 0
Reputation: 1235
Actually you are referencing a child 'message' which is logically not there,
If you want to name you root of the database simply follow the steps
DatabaseReference myRef1 = FirebaseDatabase.getInstance().getReference(); //Getting root reference
myRef1.setValue("Hello, World!");
and if you want to give some value to your child in database
, Make sure you have a child in your database
DatabaseReference myRef1 = FirebaseDatabase.getInstance().getReference(); //Getting root reference
DatabaseReference myRef = myRef1.child("message"); //Write your child reference if any
myRef.setValue("Hello, World!");
It will overwrite
the value of your child to 'Hello World'
Go to Firebase console
and create a project and give it a valid packageName which you will use. and download google-service.json file and add this file to app folder
by changing your Android View to Project View.
Add these lines into 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
}
Add these into 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'
Note : Do overwrite the rules in your database . If you are not implementing login authentication.
{
"rules":
{
".read": true,
".write": true,
}
}
And add this line in Application or in onCreate of Activity
Firebase.setAndroidContext(this);
Upvotes: 3
Reputation: 1
seems, i found the answer. It helps me!
I have used before android studio version 1.5 And that's why (maybe not) but i could't upgrade required firebase libs to 9.0.2 All this time i have used 9.0.0
So firstly i upgrade my android studio to updated stable version 2.2 and then update version of dependencies to next ones:
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'
And now all values are saved to database from android app.
So do two things: 1. update android studio to last stable version 2. update firebase required libs versions
Hope this answer will help
Upvotes: 0