android小部件中的绑定器事务失败[重复]
Posted
技术标签:
【中文标题】android小部件中的绑定器事务失败[重复]【英文标题】:Failed binder transaction in android widget [duplicate] 【发布时间】:2011-12-10 21:19:06 【问题描述】:可能重复:failed binder transaction on widget update
当我尝试在我的 android 小部件中更新位图时遇到问题。 JAVA FAILED BINDER TRANSACTION 错误在位图更新 10 到 12 次后开始在我的 logcat 中循环,之后我的小部件停止更新。我现在所做的只是在我的小部件中显示当前秒数。 这就是我创建位图的方式
public static Bitmap buildUpdate(String time,Context ctx)
Bitmap myBitmap=null;
myBitmap = Bitmap.createBitmap(160, 84, Bitmap.Config.ARGB_4444);
Canvas myCanvas = new Canvas(myBitmap);
Paint paint = new Paint();
Typeface clock = Typeface.createFromAsset(ctx.getAssets(),"AladinRegular.ttf");
paint.setAntiAlias(true);
paint.setSubpixelText(true);
paint.setTypeface(clock);
paint.setStyle(Paint.Style.FILL);
paint.setColor(Color.WHITE);
paint.setTextSize(65);
paint.setTextAlign(Align.CENTER);
myCanvas.drawText(time, 80, 60, paint);
return myBitmap;
这就是我调用它来更新我的图像视图的地方
remoteViews.setImageViewBitmap(R.id.label_fg, Drawing.buildUpdate(seconds+" ",ctxt));
我不知道我在这里做错了什么,经过两天的研究,我得到的只是我达到了 IPC 内存限制。为什么会这样以及如何避免这种情况?
【问题讨论】:
【参考方案1】:是的,您达到了通过活页夹调用传递的位图的大小限制。更新的 Android 版本为此使用了更新的机制,并且限制更高。
您可以通过使用较小的位图来避免错误。 :)
【讨论】:
但是制作较小的位图只会延迟错误,它并不能避免这种情况:/以上是关于android小部件中的绑定器事务失败[重复]的主要内容,如果未能解决你的问题,请参考以下文章
为什么我的线程组列表中有这么多的绑定器和asynctasks?他们是如何管理的?