firebase를 사용하여 만든 채팅 응용 프로그램이 있습니다. 그것은 잘 작동합니다. 그러나 일부 사용자는 그런 속어를 보냅니다. Firebase Recyclerview를 사용합니다. 내 연결은 데이터베이스에 직접 연결됩니다. 그래서 나는 데이터가 추가되기 전에 메시지가 좋은지 나쁜지를 확인할 수 없다.로컬 데이터를 Firebase 데이터베이스와 병합하여 recyclerview에 표시
내가 원하는 것은 그 데이터를 다른 위치로 보내고 싶습니다. 그런 다음 클라우드 기능을 사용하여 확인한 후 원래 채팅방 데이터베이스에 추가하고 싶습니다.
그 단계까지는 아무런 문제가 없습니다. 그러나 사용자가 메시지를 보낼 때. 사용자가 데이터가 업데이트 될 때까지 기다리지 않아도됩니다. 구름 기능은 나를 위해 2-3 초 걸립니다. 해당 데이터를 로컬로 보내는 상태로 추가하고 대화방 데이터베이스에서 업데이트되면 업데이트합니다.
그래서 그렇게하는 가장 좋은 방법은 무엇입니까 ..
내 코드와 아무 문제가 없습니다. 당신이 당신의 ChatData
클래스에 부울 변수를 추가하는 것입니다 해결하는 것이
Query query = FirebaseDatabase.getInstance()
.getReference()
.child("rooms").child("Off-Topic").child("chat")
.limitToLast(500);
firebaseOptions = new FirebaseRecyclerOptions.Builder<ChatData>()
.setQuery(query, ChatData.class)
.build();
chatAdapter = new FirebaseRecyclerAdapter<ChatData, ChatHolder>(firebaseOptions) {
@Override
protected void onBindViewHolder(ChatHolder holder, int position, ChatData model) {
}
@Override
public ChatHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.sender_text_message, parent, false);
return new ChatHolder(v);
}
};