在Android中将Firebase中的URL数据导入WebView
我已经在我的应用程序中实现了一个WebView,我正在使用Firebase作为一个数据库,我想在WebView中显示一个网页,方法是在Firebase数据库中添加该网页的URL,并从中获取它,我已经实现了所有的东西,但是当我打开我的应用程序时,我的WebView没有显示任何内容。请帮助,我搜索了很多问题,但是它们没有满足我的需要 我正在使用Android Studio webView类文件:在Android中将Firebase中的URL数据导入WebView,android,firebase,webview,firebase-realtime-database,android-webview,Android,Firebase,Webview,Firebase Realtime Database,Android Webview,我已经在我的应用程序中实现了一个WebView,我正在使用Firebase作为一个数据库,我想在WebView中显示一个网页,方法是在Firebase数据库中添加该网页的URL,并从中获取它,我已经实现了所有的东西,但是当我打开我的应用程序时,我的WebView没有显示任何内容。请帮助,我搜索了很多问题,但是它们没有满足我的需要 我正在使用Android Studio webView类文件: @Override protected void onCreate(Bundle savedI
@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 webViewPost = dataSnapshot.getValue(post2web.class);
webviewthis.loadUrl(webViewPost);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
}
<?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>
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;
}
}
webView xml文件:
@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 webViewPost = dataSnapshot.getValue(post2web.class);
webviewthis.loadUrl(webViewPost);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
}
<?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>
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的情况下加载任何url?此外,您正在显示类
post2web
,但在所显示的代码中没有使用它。请尝试通过setWebViewClient()中的此代码获取错误(如果有)
还要检查您是否在清单中包含了internet权限,以及您是否确实从firebase获取了任何数据。@Doug Stevenson我如何从firebase获取数据以在webView中显示?@DougStevenson是的,先生我可以加载URL而无需firebase查询,并且我正在使用post2web更新我的代码,请检查。@Alex Mamo先生请检查并帮助我。您是否能够在不查询Firebase的情况下加载任何url?此外,您正在显示类post2web
,但在所显示的代码中没有使用它。请尝试通过setWebViewClient()中的此代码获取错误(如果有)
还要检查您是否在清单中包含了internet权限,以及您是否确实从firebase获取了任何数据。@Doug Stevenson我如何从firebase获取数据以在webView中显示?@DougStevenson是的,先生我可以加载URL而无需firebase查询,并且我正在使用post2web更新我的代码,请检查。@Alex Mamo先生请检查并帮助我。