Database 发生异常。PlatformException(PlatformException(-3,权限被拒绝,))

Database 发生异常。PlatformException(PlatformException(-3,权限被拒绝,)),database,firebase,flutter,dart,Database,Firebase,Flutter,Dart,我试图构建一个应用程序,它应该在实时数据库中写入数据。我尝试了一个在互联网上找到的例子,但现在我得到了一个错误。我得到的错误是: 发生异常。 PlatformException(PlatformException(-3,权限被拒绝,)) 这是我尝试的代码: import 'package:flutter/material.dart'; import 'package:firebase_database/firebase_database.dart'; void main() =>

我试图构建一个应用程序,它应该在实时数据库中写入数据。我尝试了一个在互联网上找到的例子,但现在我得到了一个错误。我得到的错误是:

发生异常。
PlatformException(PlatformException(-3,权限被拒绝,))

这是我尝试的代码:

import 'package:flutter/material.dart';
import 'package:firebase_database/firebase_database.dart';

    void main() => runApp(MyApp());
    
    class MyApp extends StatelessWidget {
      //final DBRef = FirebaseDatabase.instance.reference();
      @override
      Widget build(BuildContext context) {
        return MaterialApp(
          title: "Test",
          home: Scaffold(
            appBar: AppBar(
              title: Text("Testo"),
            ),
            body: Column(
              children: <Widget>[
                RaisedButton(
                  child: Text("Write Data"),
                  onPressed: () {
                    writeData();
                  },
                ),
              ],
            ),
          ),
        );
      }
    
      void writeData() {
        print("pressed");
        FirebaseDatabase.instance
            .reference()
            .child("1")
            .set({"id": "ID1", "data": "This is a test"});
      }
    }
导入“包装:颤振/材料.省道”;
导入“package:firebase_database/firebase_database.dart”;
void main()=>runApp(MyApp());
类MyApp扩展了无状态小部件{
//final DBRef=FirebaseDatabase.instance.reference();
@凌驾
小部件构建(构建上下文){
返回材料PP(
标题:“测试”,
家:脚手架(
appBar:appBar(
标题:文本(“Testo”),
),
正文:专栏(
儿童:[
升起的按钮(
子项:文本(“写入数据”),
已按下:(){
writeData();
},
),
],
),
),
);
}
无效写入数据(){
印刷品(“印刷品”);
FirebaseDatabase.instance
.reference()
.儿童(“1”)
.set({“id”:“ID1”,“data”:“这是一个测试”});
}
}
我在互联网上发现,我在数据库中的规则可能是错误的,这可能是错误的,但我没有找到解决办法。这是我的规则(我没有改变):

rules_version='2';
服务云.firestore{
匹配/databases/{database}/documents{
匹配/{document=**}{
允许读写:if request.time

我不知道为什么会出现此错误,希望有人能帮助我。

您的代码正在查询实时数据库,但此处显示的安全规则是针对Firestore的。它们是具有不同规则语言的完全不同的数据库。Firestore规则根本不适用于实时数据库。@DougStevenson Ohh感谢你犯了一个多么愚蠢的错误你的代码正在查询实时数据库,但这里显示的安全规则是针对Firestore的。它们是具有不同规则语言的完全不同的数据库。Firestore规则根本不适用于实时数据库。@DougStevenson Ohh谢谢你这是多么愚蠢的错误
    rules_version = '2';
    service cloud.firestore {
      match /databases/{database}/documents {
        match /{document=**} {
          allow read, write: if request.time < timestamp.date(2020, 7, 29);
        }
      }
    }