gpt4 book ai didi

android - Firebase OnDataChange 函数触发时间错误?

转载 作者:行者123 更新时间:2023-11-29 19:16:48 26 4
gpt4 key购买 nike

我有一个用于测试 Firebase 的基本程序。我有 2 个按钮:第一个是写入 Firebase 数据库“a”,第二个是写入“b”,我正在使用服务检查它们:

myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String value = dataSnapshot.getValue(String.class);
if(value=="a")
{
ToneGenerator toneGenerator= new ToneGenerator(AudioManager.STREAM_DTMF,ToneGenerator.MAX_VOLUME);
//this will play tone for 2 seconds.
toneGenerator.startTone(ToneGenerator.TONE_DTMF_1, 500);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
toneGenerator.startTone(ToneGenerator.TONE_DTMF_1, 500);

}

if(value=="b")
{
ToneGenerator toneGeneratora= new ToneGenerator(AudioManager.STREAM_DTMF,ToneGenerator.MAX_VOLUME);
//this will play tone for 2 seconds.
toneGeneratora.startTone(ToneGenerator.TONE_DTMF_3, 500);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
toneGeneratora.startTone(ToneGenerator.TONE_DTMF_3, 500);

}

问题是,即使我没有互联网连接,我的意思是即使我无法在单击按钮时写入 Firebase 数据库 a 或 b,OnDataChanged 函数仍然会被触发。我想在数据库数据更改时做一些事情。

更新:当我手动更改数据库时 OnDataChange 仍然没有触发。程序启动时它只工作一次。

最佳答案

使用 ChildEventListener 然后您可以将要执行的代码放入 onChildChanged() 方法中。

关于android - Firebase OnDataChange 函数触发时间错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43241490/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com