当前位置: 首页 > 知识库问答 >
问题:

Kotlin和Firebase读写数据

谷梁宝
2023-03-14

我已经学习Kotlin三周了,所以我想从我的Firebase数据库中读取数据。

这是写入数据的mainactivity.kt。

val database = Firebase.database
val latitude = latitude.text.toString().toDouble()
    val reflatitude = database.getReference("/user/time/$currenttime/latitude")

    //saved location to the Firebase Database
    reflatitude.setValue(latitude)
        .addOnSuccessListener {
            Log.d("MainActivity", "Saved the diary latitude to Firebase Database")
        }
val database = Firebase.database
val reflatitude = database.getReference("/user/time/$currenttime/latitude")
reflatitude.addValueEventListener(object :ValueEventListener){
        override fun onDataChange(dataSnapshot: DataSnapshot){
            val latitude= dataSnapshot.getValue<Double>()
        }
        override fun onCancelled(error: DatabaseError) {
            // Failed to read value
            Log.w(TAG, "Failed to read value.", error.toException())
        }
    }

我得到的错误是:

>

  • 需要类主体

  • 共有1个答案

    卢知
    2023-03-14

    请尝试以下代码:

        val database = Firebase.database
        val reflatitude = database.getReference("/user/time/$currenttime/latitude")
        reflatitude .addValueEventListener(object : ValueEventListener { 
        override fun onDataChange(dataSnapshot: DataSnapshot){
                    val latitude= dataSnapshot.getValue<Double>()
                }
                override fun onCancelled(error: DatabaseError) {
                    // Failed to read value
                    Log.w(TAG, "Failed to read value.", error.toException())
                }
            }
    
     类似资料:
    • 我正在使用FireBase实时数据库来设置一个简单的CRUD应用程序。 我正在设置规则,以便只有登录的用户才能写入请求部分。我一定是误会了奥特。uid。 在请求中,我设置了,但我无法写入数据。 我错过了什么?

    • 我现在觉得自己很蠢。我以前做过相当多的Android Studio/Java/Firebase编码,对此相当满意。在Rest了一段时间后,我刚刚回到它,我已经更新了所有的最新版本,我只是不能让我的测试应用程序与数据库对话。 我创建了一个新的Firebase项目,下载了谷歌服务文件,使用了Android Studio助手--它告诉我我已经连接了--并使用了文档中简单的读/写“Hello World”

    • 好的,我有一个实时数据库连接到一个应用程序,直到今天规则(读写)都设置为真,一切都很好。。。。但每次有消息说 您的安全规则定义为public,因此任何人都可以窃取、修改或删除数据库中的数据 我尝试了几件事,但没有访问数据。。。只有当规则设置为true时,才能访问数据 但有没有办法修改规则,使其更安全 我希望只有少数已知的应用程序(我的应用程序)可以访问此数据

    • 主要内容:示例在本章中,我们将演示如何读取Firebase数据。 下图显示了想要读取的数据 - 可以使用方法来检索数据。 此方法将事件类型作为“值”,然后检索数据的快照。 当我们将方法添加到快照时,将获得数据的JavaScript表示形式。 示例 下面来看看一个例子。 如果运行下面的代码,浏览器的控制台将显示以下数据。 在下一章中,我们将学习可用于读取数据的其他事件类型。

    • 主要内容:设置,更新在本章中,我们将向演示如何将数据保存到Firebase。 设置 方法将写入或替换指定路径上的数据。 让我们创建一个引用收集和设置两个运动员数据信息。 执行上面示例代码,得到以下结果 - 更新 我们可以用类似的方式更新Firebase数据。 注意我们如何使用路径。 执行上面示例代码,得到以下结果 -

    • 首先,我很抱歉我的英语,我希望你能理解。这是我的第一个android应用程序,我尝试使用Firebase进行身份验证和数据库。身份验证工作正常,但我不能读写实时数据库。以下是我的数据库规则和结构: 我试图将数据库中的数据添加到reclyclerview中,但我的代码止步于AddValueEventListener。然后我尝试添加一个简单的数据到数据库,但它也不起作用。我也尝试将相同的代码放入一个活