android - 如何与两个不同的应用共享 Firebase 数据
问题描述
我已成功将数据插入到我的 firebase 数据库中。(客户端应用程序)。现在我所要做的就是将数据检索回文本视图,但在不同的应用程序中。(管理应用程序)。
public void clients()
{
String name="Abch";
String gender="Abcg";
String barber="Abcf";
String concern="Abce";
String dt="Abcd";
if(!TextUtils.isEmpty(name) || !TextUtils.isEmpty(gender) || !TextUtils.isEmpty(barber) || !TextUtils.isEmpty(concern) || !TextUtils.isEmpty(dt))
{
String id=databaseReference.push().getKey();
client client=new client(id,name,gender,barber,concern,dt);
databaseReference.child(id).setValue(client);
Toast.makeText(this, "", Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(this, "Something Went Wrong Please Check Again", Toast.LENGTH_SHORT).show();
}
}
解决方案
如果您想在另一个应用程序中检索数据,则必须使用eventListeners
,前提是您已正确设置数据库规则。
eventListeners
您可以使用三个,singleValueEventListener
即valueEventListener
和childEventListener
。由于您尚未发布数据库的结构,我假设您知道如何获取所需的DatabaseReference
.
ValueEventListener eventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
Client client = ds.getValue(Client.class);
}
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
};
databaseReference.addListenerForSingleValueEvent(eventListener);
推荐阅读
- c# - WPF TextBox 文本不会随 Windows 10 v1803 的单词建议而更新
- html - 基于 DOM 状态的条件 CSS 选择器
- excel - 嵌套 IF 语句“对象定义”错误?
- awk - awk - 在列之间添加特定数量的空格
- powershell - 我可以与我的 Active Directory 证书颁发机构交谈吗?
- jquery - 按 Enter 键时调用按钮的通用方法
- javascript - 使用 Node 将 JPG 文件转换为 MP4 视频
- sql - 绑定变量不存在 oracle 错误 + ssrs
- javascript - 无法定位具有 id 的特定元素的父级
- json - 使用 JSONEncoder 编码子类