0

再現できない興味深いバグを見つけましたが、ここの誰かが洞察を提供できると思います。

今のところ、部分的にネイティブで、部分的に Web ベースのアクティビティがあります。つまり、ネイティブ レベルでの実装が達成されるまで、1 つの要素は単なる WebView です。

読み込んでいるページに変更を加えると、モバイル インターフェースで Chrome デベロッパー ツールを使用してすぐに変更が反映されました。ただし、MainApp の WebView の変更をすぐに確認できませんでした。テストとして、変更を確認した WebView にページをロードする新しいアプリをインストールしました。MainApp のデータを消去した後、上記の変更を確認できました。

さらにいくつかの変更を加えましたが、これらはすぐに WebView に反映されています (アクティビティを取り消して再入力すると)。

これらは私の WebView 設定です。最初にこれらの変更が表示されない理由がわかりますか? 私はあまり精通していません (まだ :)) データが WebView に格納される方法を扱うとき、Web ページに加えた更新がすぐにアプリに反映されるようにしたいと考えています。ありがとうございました!

// Initialize WebView
    if (Build.VERSION.SDK_INT >= 19)
        mWebView.setWebContentsDebuggingEnabled(false);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);

            // Hide ProgressBar
            mProgressBar.setVisibility(View.GONE);
        }
    });
    final ActionBarActivity activity = this;
    mWebView.setWebChromeClient(new WebChromeClient() {
        public void onProgressChanged(WebView view, int progress) {
            // Activities and WebViews measure progress with different scales.
            // The progress meter will automatically disappear when we reach 100%
            mProgressBar.setProgress(progress);
        }
    });

    // Settings for WebView data
    WebSettings ws = mWebView.getSettings();
    ws.setSaveFormData(false);
    ws.setSavePassword(false); // Not needed for API level 18 or greater (deprecated)
4

2 に答える 2