为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 Android Studio 在 Firebase 中编辑特定子项的值?

如何从 Android Studio 在 Firebase 中编辑特定子项的值?

慕勒3428872 2021-12-18 10:00:10
你能帮我找出为什么我的代码不起作用吗?我想rate在 Firebase 中检索孩子的值并将其显示在我EditText的 Android Studio 中。然后,当在EditTextvia 中输入另一个值时button,子项的值rate将被更新。谢谢。package com.example.jordan.grat;import ...public class AdminActivity extends AppCompatActivity {private Button mLogout, mAddDriver, mEditDriver, mUpdateRate;private DatabaseReference mAdminDatabase;private EditText mRateField;private String mRate, mPassword;@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_admin);    mLogout = (Button) findViewById(R.id.logout);    mAddDriver = (Button) findViewById(R.id.addDriver);    mEditDriver = (Button) findViewById(R.id.editDriver);    mUpdateRate = (Button) findViewById(R.id.updateRate);    mRateField = (EditText) findViewById(R.id.rateField);    mAdminDatabase = FirebaseDatabase.getInstance().getReference().child("Users").child("Admins");    getRate();    mAddDriver.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View view) {            Intent intent = new Intent(AdminActivity.this, AddDriverActivity.class);            startActivity(intent);            finish();            return;        }    });    mEditDriver.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View view) {        }    });    mLogout.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View view) {            Intent intent = new Intent(AdminActivity.this, MainActivity.class);            startActivity(intent);            finish();            return;        }    });    mUpdateRate.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View view) {            setRate();        }    });}抱歉,我还是 Android Studio 的初学者。任何帮助,将不胜感激。我的火力基地:
查看完整描述

3 回答

?
慕妹3242003

TA贡献1824条经验 获得超6个赞

试试这个 :

mAdminDatabase = FirebaseDatabase.getInstance().getReference("Users").child("Admins");

它应该有效吗:D

如果它不起作用试试这个:

  mUser = FirebaseDatabase.getInstance().getReference("Users");

之后,您可以设置管理员的值

  mUser.child("Admins").child("rate").setValue("aString");


查看完整回答
反对 回复 2021-12-18
?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

检查中的规则FirebaseDatabase。如果将它们设置为true,则无需进行身份验证。顺便说一句,这是一个不推荐的选项,您应该始终在这方面有一定的安全性。

希望能帮助到你。



查看完整回答
反对 回复 2021-12-18
?
12345678_0001

TA贡献1802条经验 获得超5个赞

查看您的 Firebase 规则。我看到你要求“公开限制”,所以你可以打开你的规则并将读写设置为真。


像这样:


{

    "rules": {

    ".read": true,

    ".write": true

    }

}


查看完整回答
反对 回复 2021-12-18
  • 3 回答
  • 0 关注
  • 167 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信