Firebase数据库连接被杀死,但信息将进入一个数据库,只是不知道一个Android Studio

x8diyxa7  于 2023-04-04  发布在  Android
关注(0)|答案(1)|浏览(101)

我已经将Firebase添加到我的Android Studio中,但我收到一个错误:
带持久连接:pc_0 -服务器强制终止Firebase数据库连接。将不尝试重新连接。原因:数据库位于其他区域。请将数据库URL更改为https://destination-e6a01-default-rtdb.europe-west1.firebasedatabase.app“
我改变了区域,但什么都没有发生在我的应用程序中,我在我的java代码中有这个:

// Initialize Firebase in your app
        FirebaseApp.initializeApp(this);

        // Create a reference to your Firebase Realtime Database instance using the URL
        FirebaseDatabase database = FirebaseDatabase.getInstance("https://Destination.firebaseio.com/");
        Log.d("TAG", "Database URL: " + database.getReference().toString());

        DatabaseReference myRef = database.getReference("destination-e6a01-default-rtdb");

        Spinner categorySpinner = findViewById(R.id.spinner_categories);
        String category = categorySpinner.getSelectedItem().toString();

        double latitude = 52.519345;
        double longitude = -6.610428;

        VanCameraLocations speedvancameralocations = new VanCameraLocations(latitude, longitude, category);

        myRef.push().setValue(speedvancameralocations);

我试着使用这个question但是这个问题的答案对我不起作用.我的logcat是说一些信息被上传到一个数据库,但我使用的数据库,当我去看我的数据库在线它不显示我的数据库有人可以帮助我吗

k2fxgqgv

k2fxgqgv1#

您收到以下错误消息:
Firebase数据库连接被服务器强制终止。将不尝试重新连接。原因:数据库位于不同的区域。
因为你传递给getInstance()方法的是错误的URL:

FirebaseDatabase database = FirebaseDatabase.getInstance("https://Destination.firebaseio.com/");

您的项目的URL不是:

https://Destination.firebaseio.com/

但是:

https://destination-e6a01-default-rtdb.europe-west1.firebasedatabase.app

因此,为了解决这个问题,请将database声明更改为:

FirebaseDatabase database = FirebaseDatabase.getInstance("https://destination-e6a01-default-rtdb.europe-west1.firebasedatabase.app");

除此之外,请删除以下代码行:

//DatabaseReference myRef = database.getReference("destination-e6a01-default-rtdb");

因为数据库URL应该传递给getInstance()方法,而不是getReference()方法。还有一件事要提的是,当你传递一个URL时,你必须传递https://,而不是没有它。

相关问题