Android/Android Kotlin
[Android Kotlin] Realtime Database 사용법
Bell91
2023. 10. 25. 17:24
반응형
1. 데이터베이스에 쓰기
val database = Firebase.database //테스트 모드는 괄호를 빼준다.
val database = Firebase.database("https://....firebasedatabase.app")
val myRef = database.getReference("message")
myRef.setValue(binding.etInput.text.toString()) // 데이터 1개가 계속 수정되는 방식
myRef.push().setValue(binding.etInput.text.toString()) // 데이터가 계속 쌓이는 방식
2. 데이터베이스에서 읽기
실시간으로 앱 데이터를 읽기 위해 myRef 에 ValueEventListener 를 추가한다.
이 클래스의 onDataChange() 메서드는 데이터가 변경될 때마다 호출된다.
이 클래스의 onCancelled() 메서드는 데이터 읽기에 실패 시 호출된다.
myRef.addValueEventListener(object : ValueEventListener {
override fun onDataChange(dataSnapshot: DataSnapshot) {
val value = dataSnapshot.getValue<String>() // 클레스는 getValue(TestData::class.java) 이렇게 넣어준다.
Log.d(TAG, "Value is: $value")
}
override fun onCancelled(error: DatabaseError) {
Log.w(TAG, "Failed to read value.", error.toException())
}
})
3. 옵저버사용
fragment 에서는 this대신 viewLifecycleOwner를 사용해야 한다.
fun observerData(){
viewModel.fetchData().observe(viewLifecycleOwner, Observer {
mAdapter.setListData(it)
mAdapter.notifyDataSetChanged()
})
}
Reference
https://eunoia3jy.tistory.com/174
[Android/kotlin] 구글 Firebase Realtime Database 사용하기
Realtime Database Firebase의 Realtime Database는 NoSQL기반 cloud-hosted database입니다. 실시간으로 모든 클라이언트에서 데이터가 동기화 되어 사용할 수 있습니다. https://firebase.google.com/docs/database/android/start An
eunoia3jy.tistory.com
반응형