Куда мне поместить частное логическое значение, которое проверяет соединение inte rnet? - PullRequest
2 голосов
/ 11 июля 2020

Я новичок в программировании android. Я делаю просмотр своего веб-сайта в студии android. У меня есть этот код, который проверяет соединение inte rnet:

@Override
        private boolean isNetworkAvailable() {
            ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
            NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
            return activeNetworkInfo != null && activeNetworkInfo.isConnected();}

И этот WebViewClient:

webView.setWebViewClient(new WebViewClient() {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                if( URLUtil.isNetworkUrl(url) ) {
                    return false;}
                Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
                startActivity( intent );
                return true;};

Я хочу поместить код для проверки inte rnet внутри WebViewClient, так что inte rnet проверяется, когда пользователь просматривает веб-страницу.

Где мне поместить проверочный код? А как и что мне положить в WebViewClient? Я попытался поместить код для получения inte rnet на @Override внутри WebViewClient, но появилась ошибка

«Метод не переопределяет и не реализует метод из супертипа».

Я не знаю, как это сделать или что это значит.

Вот как я использую для создания webView:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        PreferenceManager.setDefaultValues(this, R.xml.config, false);
        setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        setContentView(R.layout.activity_main);
        CookieSyncManager.createInstance(this);
        CookieSyncManager.getInstance().startSync();
        this.webView = (WebView) findViewById(R.id.webview);
        WebSettings webSettings = webView.getSettings();
        webSettings.setJavaScriptEnabled(true);
        webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
        webView.loadUrl("...mysite.com");
...