自4.4.4以来,Canvas图像在Android中没有显示

时间:2016-01-26 11:43:46

标签: android canvas webview

WebView中的Canvas图像在android 2.3.x到4.1.x中没有任何问题 但是,由于WebView切换到铬我的画布图像有问题 - 我所看到的只是空白背景而是生成图像。我在4.4.x和5.1+ android roms上都有问题。 我尝试使用我在stackoverflow上找到的答案,比如在setContentView之前添加enableSlowWholeDocumentDraw()。

if (Build.VERSION.SDK_INT >= 21) {
           MyWebView.enableSlowWholeDocumentDraw();
       }

或将webview设置为软件渲染:

MyWebView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

此外,我甚至尝试在我的Android清单中完全禁用硬件加速。但没有任何成功。

目前的代码非常简单:

public class MainActivity extends Activity {
private WebView WebViewPassCard;

   @SuppressLint("SetJavaScriptEnabled")
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       if (Build.VERSION.SDK_INT >= 21) {
           WebViewPassCard.enableSlowWholeDocumentDraw();
       }
       setContentView(R.layout.mainland);
       WebViewPassCard = (WebView) findViewById(R.id.webView);
       WebViewPassCard.getSettings().setBuiltInZoomControls(true);
       WebViewPassCard.getSettings().setJavaScriptEnabled(true);
       WebViewPassCard.getSettings().setDomStorageEnabled(true);
       WebViewPassCard.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
       WebViewPassCard.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
       WebViewPassCard.loadUrl("file:///android_asset/passwordcard.html");

可以在此处找到资产:https://github.com/cryptofuture/PassCard/tree/master/assets

LogCat中的错误:
Android 5.x +:
art:尝试从IRT中删除本地句柄作用域条目,忽略 AwContents:onDetachedFromWindow在已经分离时调用。忽略 编舞:跳过52帧!应用程序可能在其主线程上做了太多工作。
Android 4.4.x:
AwContents:nativeOnDraw失败;清除背景颜色。

0 个答案:

没有答案