2011-10-19 13 views

risposta

4

Questo sembra essere definito in DateExtension.cpp, nel webkit. È un'eccezione C++ che viene generata se un hook JS (inserito in Date.getTime, se enableSleepDetection (true) è impostato) viene chiamato più di 1000 volte.

Si potrebbe voler recuperare il codice sorgente di Android per esaminarlo di più. Non c'è documentazione sul file.

0

Ho ricevuto lo stesso errore. Dopo alcune indagini ho risolto questo problema. Forse questo codice ti sarà d'aiuto:

 { 
      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(); 
       } 
      } 
Problemi correlati