Я работаю с базой данных в реальном времени, но каждый раз, когда я обновляю приложение в магазине воспроизведения, записи удаляются, а затем создается несколько новых записей со значениями, тогда я не знаю, откуда они берутся. Они удаляются не сразу, а постепенно, с интервалом в несколько секунд. Я не понимаю, я даже изменяю имя дочернего контейнера, чтобы проверить, есть ли проблема между устройствами с постоянными данными, установленными в true, но все еще происходящими, и я являюсь единственным устройством, использующим этого родителя.
Это сводит меня с ума! Кто-нибудь может мне помочь? Спасибо.
articleListener = object : ValueEventListener {
override fun onDataChange(dataSnapshot: DataSnapshot) {
data = mutableListOf()
for (article in dataSnapshot.children) {
val articleData = article.getValue(Article::class.java)
articleData?.id = article.key
data.indexOfFirst { art -> art.id == article.key }.let {
//if ID exists then overrides else add
if (it != -1) {
articleData?.let { it1 -> data[it] = it1 }
} else
articleData?.let { it1 -> data.add(it1) }
}
}
}
override fun onCancelled(databaseError: DatabaseError) {
// Getting Post failed, log a message
Log.w("TAG", "loadPost:onCancelled", databaseError.toException())
}
}
firebaseDatabase = try {
FirebaseDatabase.getInstance().apply { setPersistenceEnabled(true) }
} catch (e: Exception) {
Log.w("Warn", e.toString())
FirebaseDatabase.getInstance()
}
// I changed the container from articles to release_articles
databaseReference = firebaseDatabase.reference.child("release_articles")
databaseReference.orderByChild("date/time").startAt(getTodayInMillis().toDouble())
.addValueEventListener(articleListener)