반응형
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
반응형
'Android > Android Kotlin' 카테고리의 다른 글
[Android Kotlin] 네이버 로그인 (0) | 2023.10.25 |
---|---|
[Android Kotlin] Firebase로 로그인 기능 구현 - 이메일 로그인 (0) | 2023.10.25 |
[Android Kotlin] LayoutManager 종류 (0) | 2023.10.25 |
[Android Kotlin] RecyclerView + LiveData, ViewModel, Firebase Realtime Database, DataBinding (0) | 2023.10.25 |
[Android Kotlin] ImageView 크기 조절 (0) | 2023.10.25 |