在 Android 中将数据从 Firebase 数据库检索到 webView

Retrieving data from Firebase database to webView in Android

我正在构建一个使用 webViewFirebase 作为数据库的应用程序,我已经正确地实现了两者,但问题是我的 webView 是没有从 Firebase 数据库中检索 任何数据并且在我打开应用程序时显示空白,我已经通过直接添加 URL 检查了 webView 并且它显示网页,但当我将它与 Firebase 一起使用时它不显示任何内容,请帮助解决这个问题。

I am using Android Studio

webView class 文件:

public class webViewNews extends AppCompatActivity {

    private WebView webviewthis;
    private RecyclerView webVieRes;
    private DatabaseReference mdataRef;



    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.webview_page);
        mdataRef = FirebaseDatabase.getInstance().getReference().child("weber");
        webviewthis = (WebView)findViewById(R.id.webView_news);
        webviewthis.setWebViewClient(new WebViewClient());
        webviewthis.getSettings().setJavaScriptEnabled(true);
        webviewthis.getSettings().setLoadsImagesAutomatically(true);
        mdataRef.addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
             post2web webView = dataSnapshot.getValue(post2web.class);
                webviewthis.loadUrl(webView);
            }
            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });

    }
}

webView xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <WebView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/webView_news"/>

  </LinearLayout>

getter 和 setter class 文件:

public class post2web {
    private String webViewPost;


    public post2web(){
    }

    public post2web(String webViewPost) {
        this.webViewPost = webViewPost;
    }


    public String getWebViewPost() {
        return webViewPost;
    }

    public void setWebViewPost(String webViewPost) {
        this.webViewPost = webViewPost;
    }
}

Firebase 规则:

webView 的 Firebase 数据库结构

您的代码有效。我很确定唯一的问题是 Firebase 数据库规则。

在 Firebase 中更改您的数据库规则,一切都会正常。