Articles of firebase database

在Android应用中使用Firebase(BaaS)存储电子邮件和密码时如何包含用户名?

Firebase createUser()方法接受电子邮件和密码字段,但是如果我还想让用户使用类似于Snapchat,Instagram,StackOverflow等的自定义用户名呢? 有没有办法修改现有方法以接受该字段,或者我是否需要手动推送和管理此信息,如果是这样的话? 这是我第一次尝试存储所需的用户信息: Firebase ref = new Firebase(firebaseURL); ref.createUser(email, password, new Firebase.ValueResultHandler<Map>() { @Override public void onSuccess(Map result) { System.out.println(“Successfully created user account with uid: ” + result.get(“uid”)); //Sign user in Firebase ref = new Firebase(firebaseURL); ref.authWithPassword(email, password, new Firebase.AuthResultHandler() { @Override public void onAuthenticated(AuthData authData) { System.out.println(“User ID: ” + authData.getUid() + “, […]

导致mutableData.setValue()的递归导致在backstack中生成相同的活动?

编辑:2016年10月23日 :这还没有解决 ,我仍然在寻找答案。 我将重写这个问题以使其更清晰,因为我现在知道是什么导致了这个问题。 编辑:2016年10月26日:发现的事情:在尝试find问题时,我得到了一个帮助我find问题的错误。事实certificate,如果我在Firebase数据库中有这个: Campaigns{ UNQ_KEY: 1 //This is being set in the transaction } 而不是这个: Campaigns{ UNQ_KEY:{ count: 1 //this is being set in the transaction } } 问题不会发生 。 所以,总之,它可能是一个递归错误。 我有这个Firebase交易: database.runTransaction(new Transaction.Handler() { @Override public Transaction.Result doTransaction(MutableData mutableData) { Long preUserIncrementedInt = Long.parseLong(b.getText().toString()); Long userIncrementedInt = ++preUserIncrementedInt; mutableData.child(“users”).child(getUid()).child(“count”).setValue(userIncrementedInt); Long preIncrementedTotalCount = […]

类java.util.Map具有genericstypes参数,请改用GenericTypeIndicator

我正在使用firebase从数据库中检索数据 Map map = dataSnapshot.getValue(Map.class); 获取值,但它显示错误 E/AndroidRuntime: FATAL EXCEPTION: main Process: com.rana.sahaj.myyu, PID: 13179 com.google.firebase.database.DatabaseException: Class java.util.Map has generic type parameters, please use GenericTypeIndicator instead at com.google.android.gms.internal.zzaix.zzb(Unknown Source) at com.google.android.gms.internal.zzaix.zza(Unknown Source) at com.google.firebase.database.DataSnapshot.getValue(Unknown Source) at com.rana.sahaj.myyu.profile.Profile$2.onDataChange(Profile.java:158) at com.google.android.gms.internal.zzafp.zza(Unknown Source) at com.google.android.gms.internal.zzagp.zzSu(Unknown Source) at com.google.android.gms.internal.zzags$1.run(Unknown Source) at android.os.Handler.handleCallback(Handler.java:733) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5052) at java.lang.reflect.Method.invokeNative(Native […]

在FirebaseRecyclerAdapter上应用filter

我正在使用FirebaseRecyclerAdapter来显示聊天消息。 private void attachRecyclerViewAdapter() { lastFifty = mChatRef.limitToLast(50).; mRecyclerViewAdapter = new FirebaseRecyclerAdapter( Chat.class, R.layout.message, ChatHolder.class, lastFifty) { @Override public void populateViewHolder(ChatHolder chatView, Chat chat, int position) { chatView.setName(chat.getName()); chatView.setText(chat.getText()); chatView.setTimeLocation(chat.getTime()); FirebaseUser currentUser = mAuth.getCurrentUser(); if (currentUser != null && chat.getUid().equals(currentUser.getUid())) { chatView.setIsSender(true); } else { chatView.setIsSender(false); } } }; 我有一个包含特定用户列表的列表。 我想应用filter只查看来自这些特定用户的邮件。 我该怎么办 ?

Firebase权限被拒绝错误

我是firebase的初学者,并试图从我的数据库中获取价值。 但它每次都显示我同样的错误。 W/SyncTree: Listen at /child failed: FirebaseError: Permission denied 我的火力基地规则 { “Condition” : “sunny”, “child” : 5 } 我的Androidmanifest.xml 我的mainactivity.java包com.mohit.firebase; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.TextView; import com.firebase.client.DataSnapshot; import com.firebase.client.Firebase; import com.firebase.client.FirebaseError; import com.firebase.client.ValueEventListener; public class MainActivity extends AppCompatActivity { TextView tv; Button bt1; Button bt2; Firebase mRootRef; […]

将项目添加到Recycler View的底部

插图代码: mLinearLayoutManager = new LinearLayoutManager(this); mLinearLayoutManager.setReverseLayout(true); mLinearLayoutManager.setStackFromEnd(true); mMessageRecyclerView.setLayoutManager(mLinearLayoutManager); 见这里的插图 如何将新项目(在我的情况下,消息)添加到Recycler View的底部并仍然将视图的“重力”保持在顶部? 那么,现在有效的是: 视图的重力位于顶部。 那很好! ✓ 什么行不通: 新消息将添加到视图的顶部。 这很糟糕×我希望将它们添加到视图的底部(在上一条消息之后),如下所示: 请参阅此处

如何从android中的firebase中检索List对象

我无法从Firebase中检索列表。 我可以毫无困难地存储它,但是当我尝试将dataSnapshot.getValue()强制转换为ArrayList时,我的应用程序崩溃了,给出了exception: HashMap无法转换为ArrayList 但是当我试图将它转换为HashMap时,它也崩溃了,给出了exception: ArrayList无法转换为hashmap 需要帮助! 以下是创建问题的代码: Fire.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { List td = (ArrayList) dataSnapshot.getValue() notifyDataSetChanged(); } @Override public void onCancelled(FirebaseError firebaseError) { } }); 我想将Firebase中的所有数据检索为一个列表。 TaskDes类包含三个字段: class TaskDes { // definition boolean done String taskDescription String taskTitle }

如何在firebase数据库中获取所有子数据?

我有这个firebase数据库 我需要获得所有用户的电话号码,我应该使用哪个听众来获取所有用户? 每个用户都被添加为一个对象,其中user-ID作为该对象的名称,我需要在不知道该用户ID的情况下检索这些对象 我搜索了文档,它与DataSnapshot有关,但是没有监听器我无法获得DataSnapshot ! 寻找DataSnapshout是否正确或我是否应该使用其他东西

如何从firebase实时数据库中删除?

我在Android应用中使用Firebase实时数据库,并且拥有如下数据: 如何删除记录“Apple” (标记在图片中)? 根据文档,删除一个项目,你在引用上调用removeValue() 。 但要获得引用我需要子ID 。 因为它是一个随机生成的id( -KISNx87aYigsH3ILp0D ),如何删除呢?

获取firebase android中特定值的推送ID

当我像下一个把值推到它时,我想要检索firebase生成的id 我想检索“-KGdKip ….”我为getKey()尝试的那封电子邮件的这个id,但它返回“用户”,当用户获取值时,它将整个对象从id返回到配置文件picuter,这不会让我在我的应用程序中将其作为User对象 怎么解决这个? Firebase users = myFirebaseRef.child(“users”); users.orderByChild(“email”).equalTo(“z@m.com”).addListenerForSingleValueEvent(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { dataSnapshot.getKey(); Log.d(“User”,dataSnapshot.getRef().toString()); Log.d(“User”,dataSnapshot.getValue().toString()); } @Override public void onCancelled(FirebaseError firebaseError) { Log.d(“User”,firebaseError.getMessage() ); } });