Сбой транзакции связывания в виджете Android

1

Возможный дубликат:
неудачная транзакция связывания с обновлением виджета

У меня проблема, когда я пытаюсь обновить растровое изображение в моем виджетах Android. Ошибка JAVA FAILED BINDER TRANSACTION запустит цикл в моем logcat после 10-12 обновлений растрового изображения, и после этого мой виджет перестанет обновляться. Все, что я делаю, показывает текущие секунды в моем виджете на данный момент. Вот как я создаю растровое изображение

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. Почему так и как этого избежать?

Теги:
android-widget

1 ответ

2

Да, вы нажимаете ограничение размера для растровых изображений, прошедших через вызов связующего. В более поздних версиях Android используются новые механизмы для этого и пределы выше.

Вы можете избежать ошибки, используя меньшие растровые изображения. :)

  • 1
    но создание меньшего растрового изображения только задерживает ошибку, но этого не избежать: /

Ещё вопросы

Сообщество Overcoder
Наверх
Меню