0

I have a Firebase database

database

Keys is autogenerated. How can I give the key like a -LPW2KQ_cF82Bbx-VRXl?

Code

String key = FirebaseDatabase.getInstance()
                        .getReference()
                        .push()
                        .getKey();

return me a new autogenerated key.

UPDATE

Code

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
        ref.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot snapshot) {
                for (DataSnapshot objSnapshot: snapshot.getChildren()) {
                    String key = objSnapshot.getKey();
                    Toast.makeText(Chat.this, key, Toast.LENGTH_SHORT).show();
                }


   }
                @Override
                public void onCancelled(DatabaseError firebaseError) {
                    Log.e("Read failed", firebaseError.getMessage());
                    Toast.makeText(Chat.this, "error", Toast.LENGTH_SHORT).show();
                }
            });
        }
    });

return me a last valid key -LP_mib37Ba7uGNVzk3U.

How can I give key for each entry I click on? ?

1 Answers1

0

first you create one root child then use your sub-child. like this :

Users
&nbsp&nbsp &nbsp -LP_mib37Ba7uGNVzk3U
&nbsp&nbsp &nbsp -LP_mib37Ba7uGNVzk3U

try this :

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Users");
        ref.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot snapshot) {
                for (DataSnapshot objSnapshot: snapshot.getChildren()) {
                    String key = objSnapshot.getKey();
                    Toast.makeText(Chat.this, key, Toast.LENGTH_SHORT).show();
                }


   }
                @Override
                public void onCancelled(DatabaseError firebaseError) {
                    Log.e("Read failed", firebaseError.getMessage());
                    Toast.makeText(Chat.this, "error", Toast.LENGTH_SHORT).show();
                }
            });
        }
    });

Hope it's help full for you.

chetan mahajan
  • 349
  • 4
  • 15