首页 > 解决方案 > 我正在尝试在我的应用中打开 firebase 网站,但它要求使用外部浏览器

问题描述

我正在尝试使用webview在我的应用程序中打开firebase网站。但是应用程序在打开该活动时请求外部浏览器。

public class FirebaseActivity extends AppCompatActivity {

    private WebView firebase;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_firebase);
        firebase = findViewById(R.id.firebase);
        this.firebase.getSettings().setDomStorageEnabled(true);
        this.firebase.getSettings().setJavaScriptEnabled(true);
        firebase.loadUrl("https://console.firebase.google.com/");

    }
}

标签: androidfirebasewebviewfirebase-console

解决方案


设置 WebViewClient 应该可以解决该问题。

public class FirebaseActivity extends AppCompatActivity {
    private WebView firebase;
    private class MyWebViewClient extends WebViewClient {
          @Override
          public boolean shouldOverrideUrlLoading(WebView view, String url) {
              view.loadUrl(url);
              return true;
          }
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_firebase);
        firebase = findViewById(R.id.firebase);
        firebase.setWebViewClient(new MyWebViewClient());
        firebase.loadUrl("https://console.firebase.google.com/");
        firebase.requestFocus();
    }
}

推荐阅读