2011-10-19 6 views

Odpowiedz

4

Wygląda na to, że został zdefiniowany w pliku DateExtension.cpp w zestawie webkit. Jest to wyjątek C++, który jest generowany, jeśli hak JS (wstawiony do Date.getTime, jeśli ustawiono enableSleepDetection (true)) jest wywoływany ponad 1000 razy.

Możesz chcieć pobrać kod źródłowy Androida, aby móc go jeszcze bardziej przejrzeć. W pliku nie ma dokumentacji.

0

Wystąpił ten sam błąd. Po przeprowadzeniu dochodzenia rozwiązałem ten problem. Może ten kod pomoże:

 { 
      webView = (WebView) view.findViewById(R.id.transcationwebview); 
       progressdialog = ProgressDialog.show(mContext, "", 
         mContext.getString(R.string.please_wait)); 
       progressdialog.setCancelable(true); 
       progressdialog.setOnCancelListener(new OnCancelListener() { 

        @Override 
        public void onCancel(DialogInterface dialog) { 
         webView.stopLoading(); 
         // webView.clearView(); 

        } 
       }); 



       webView.setWebChromeClient(new MyChromeClient()); 
       webView.getSettings().setBuiltInZoomControls(true); 
       webView.getSettings().setLayoutAlgorithm(
         WebSettings.LayoutAlgorithm.NARROW_COLUMNS); 
       webView.getSettings().setUseWideViewPort(true); 
       webView.getSettings().setLoadWithOverviewMode(true); 
       webView.setWebViewClient(new WebViewClient() { 
        @Override 
        public boolean shouldOverrideUrlLoading(WebView view, String url) { 
         // TODO Auto-generated method stub 
         // view.loadUrl(url); 
         return false; 
        } 

        @Override 
        public void onPageFinished(WebView view, String url) { 
         // TODO Auto-generated method stub 
         super.onPageFinished(view, url); 
         if (progressdialog != null && progressdialog.isShowing()) { 
          progressdialog.dismiss(); 
         } 

        } 

        @Override 
        public void onPageStarted(WebView view, String url, Bitmap favicon) { 
         // TODO Auto-generated method stub 
         super.onPageStarted(view, url, favicon); 
        } 

        @Override 
        public void onReceivedError(WebView view, int errorCode, 
          String description, String failingUrl) { 
         // TODO Auto-generated method stub 



        } 
       }); 
       webView.getSettings().setLoadWithOverviewMode(true); 
       webView.getSettings().setPluginState(PluginState.ON); 
       webView.getSettings().setBuiltInZoomControls(true); 
       webView.getSettings().setPluginsEnabled(true); 
       webView.setKeepScreenOn(true); 
       webView.getSettings().setDomStorageEnabled(true); 
       webView.getSettings().setAppCacheEnabled(true); 
       webView.getSettings().setJavaScriptEnabled(true); 
       webView.loadUrl(url); 
} 
    public class MyChromeClient extends WebChromeClient { 
      @Override 
      public void onProgressChanged(WebView view, int newProgress) { 
       try { 

        if (progressdialog.isShowing()) { 
         progressdialog.setMessage(getString(R.string.loading) 
           + newProgress + " %"); 

        } else { 
         /* 
         * webView.stopLoading(); webView.clearView(); 
         */ 
        } 
       } catch (Throwable e) { 

        e.printStackTrace(); 
       } 
      } 
Powiązane problemy