2017-12-18 1 views
0

없이 데이터베이스에서 값을 가져 오기, 이것은 내가 가지고있는 무효 나는 그것을 호출 할 때마다 데이터베이스가 변경 될 때마다 트리거합니다. 나는 onDataChange 또는 ValueEventListener 공백 때문에 생각합니다.나는 데이터베이스에서 일부 값을 얻을 수있는 공간을 만들 수 있지만이 데이터를 매번 데이터베이스 변경을 갱신하지 않는 방법 EvenListener

DataSnapshot을 호출하는 다른 방법이 있으면 방황하고 있습니다.

답변

0

데이터베이스에서 한 번만 데이터를 읽고 업데이트를받지 않으려면 addListenerForSingleValueEvent으로 청취자를 등록하십시오. 따라서 :

DatabaseReference.addListenerForSingleValueEvent(new ValueEventListener() { 

이 내용은 Firebase documentation on reading data from the database에 설명되어 있습니다.

+0

데이터가 변경 될 때마다 작동하지 않지만 계속 트리거됩니다. –

+1

이상하게 보입니다. 'addListenerForSingleValueEvent'는 현재 값에 대해 "즉시"실행 한 다음 청취를 중단합니다. 나는 그것보다 다른 방식으로 작동하는 것을 본 적이 없으므로 당신이 설정 한 방식대로 할 가능성이 높습니다. 공유 한 코드를 사용하면'getUser'를 호출 할 때마다 onDataChange가 호출됩니다. –

+0

버튼을 눌렀을 때 전화를 걸고 싶지만 데이터베이스가 바뀌면 전화하지 않기. 어떤 생각을 어떻게 구현할 수 있습니까? –

관련 문제