SetValueAsync (не удается разрешить метод «setValueAsync» в «DatabaseReference»)

Я делаю это руководство связь, и я не могу вызвать setValueAsync, я получаю сообщение об ошибке. Не удается разрешить метод setValueAsync в «DatabaseReference». Я видел, что могу использовать его в начале, когда я установил String, но я не знаю, как это может мне помочь. Спасибо всем.

Мой код:

public class MessageMembersList extends Fragment implements View.OnClickListener {
    private Button btnConnectToServer;
    FirebaseAuth mAuth;
    FirebaseUser user;
    String curentName;
    String curentLastName;
    String curentEmail;
    String Name;
    String LastName;
    String Email;

    public Users(String Name, String LastName, String Email) {

        this.Name = Name;
        this.LastName = LastName;
        this.Email = Email;

    }

    public void onViewCreated(View view, Bundle savedInstanceState) {
        btnConnectToServer = (Button) getView().findViewById(R.id.btnConnectToServer);
        mAuth = FirebaseAuth.getInstance();
        btnConnectToServer.setOnClickListener(this);
        user = mAuth.getCurrentUser();

                    FirebaseDatabase database = FirebaseDatabase.getInstance();
                    DatabaseReference myRef = database.getReference().child("No server").child(user.getUid());
                    myRef.addValueEventListener(new ValueEventListener() {
                        @Override
                        public void onDataChange(@NonNull DataSnapshot datasnapshot) {
                            curentName = (String) datasnapshot.child("name").getValue().toString();
                            curentLastName = (String) datasnapshot.child("lastName").getValue().toString();
                            curentEmail = (String) datasnapshot.child("email").getValue().toString();

                            txt1.setText(Name);

                        }


                        @Override
                        public void onCancelled(@NonNull DatabaseError error) {

                        }
                    });
}
}

Часть ошибки setValueAsync (не удается разрешить метод setValueAsync в «DatabaseReference»). У пользователей есть ошибка, но я не буду говорить об этом в этом вопросе.

 @Override
    public void onClick(View view) {
        switch (view.getId()){
            case R.id.btnConnectToServer:
                connectedToServer = false;
                        WifiManager wifiManager = (WifiManager) getActivity().getApplicationContext().getSystemService(Context.WIFI_SERVICE);
                        WifiInfo info = wifiManager.getConnectionInfo();
                        String ssid = info.getSSID();
                        serverName = ssid;

                        FirebaseDatabase database = FirebaseDatabase.getInstance();
                        DatabaseReference myRef = database.getReference().child(ssid);

                        myRef.child(user.getUid()).setValueAsync(new Users(curentName,curentLastName,curentEmail));

                        break;
                    }
    }
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
20
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Метод setValueAsync() является частью SDK администратора Firebase и работает ли нет в Android. Если вам нужно добавить значение в базу данных реального времени во фрагменте Android, вы должны использовать Android SDK Fireabse и использовать метод setValue(), как описано в официальной документации для запись данных.

Но если я использую setValue(), я получаю случайное имя для значения. как -MzxnO08F4QyQTYlsBDG: Том, но я хочу имя: Том

Daniil Nedbaylo 07.04.2022 09:53

Нет, если вы используете толкать(), вы получаете случайное значение. Если не хотите этого, то просто используйте ref.child("Name").setValue("Tom"), верно?

Alex Mamo 07.04.2022 10:02

Другие вопросы по теме