代码之家  ›  专栏  ›  技术社区  ›  user9027554

我应该使用哪种方法获取用户在身份验证期间提供的电话号码[重复]

  •  0
  • user9027554  · 技术社区  · 7 年前
    DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
    DatabaseReference usersRef = rootRef.child("Users");
      ValueEventListener eventListener = new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                ListView listView = (ListView) rootView.findViewById(R.id.usersList);
                ArrayAdapter<String> adapter;
                adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, android.R.id.text1, al);
                for(DataSnapshot ds : dataSnapshot.getChildren()) {
                    name = ds.child("Name").getValue().toString();
                    list_user_id = ();
    //                    Log.d("TAG", name);
                    al.add(name);
    //                    String phonenumber =
                }
                listView.setAdapter(adapter);
            }
    
            @Override
            public void onCancelled(DatabaseError databaseError) {
                Toast.makeText(getActivity(),"Please Check Your Internet Connection",Toast.LENGTH_SHORT).show();
            }
        };
    

    我想在list\u user\u id中提取电话号码。。。对于获取当前用户电话号码,我可以使用getPhoneNumber方法,但我不确定如何获取与我聊天的用户的号码

    1 回复  |  直到 7 年前
        1
  •  0
  •   Peter Haddad    7 年前

    尝试以下操作:

    DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
    DatabaseReference usersRef = rootRef.child("Users");
    ref.addValueEventListener(new ValueEventListener(){
     @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
    for(DataSnapshot datas: dataSnapshot.getChildren()){
       String phonenumber=datas.child("phonenumber").getValue().toString();
    
       }
    } 
    
      @Override
    public void onCancelled(FirebaseError firebaseError) {
       }
    });
    

    由于您想获取与您聊天的人的电话号码,因此从逻辑上讲,您可以单击该人的姓名开始聊天,然后您可以使用以下查询:

    ref.orderByChild("name").equalTo(Nameyouclicked).addValueEventListener(...){..}
    

    通过这种方式,您可以获得名称,然后可以获得用户ID或与该用户相关的任何内容。