Упрощенный SDK

В новой версии YotaDevices SDK 3.7.10 введен упрощенный API для работы с EPD. SDK 3.7.10 содержит несколько новых методов, которые значительно упрощают разработку приложений для EPD.

Режимы обновлений

Так как концепции Waveforms и Dithering трудные для понимания, в новом SDK мы добавили Режимы Отрисовки (Drawing Modes), которые автоматически применяются системой в зависимости от того, что происходит на экране.

Существует 3 режима отрисовки:

    public static final int UPDATE_MODE_HIGH_QUALITY = 0;
    public static final int UPDATE_MODE_HIGH_SPEED = 1;
    public static final int UPDATE_MODE_ADAPTIVE = 2;

UPDATE_MODE_HIGH_QUALITY

В этом режиме используются PARTIAL Waveform и 16-цветовую палитру. Режим обеспечивает обновления высокого качества, но низкую скорость обновления.

Такой режим применяется для отрисовки изображений, которые долгое время остаются статичными.

UPDATE_MODE_HIGH_SPEED

https://yotaphone.com/media/3_simplified+sdk_a2b.gif

В этом режиме используется A2 Waveform и 2х-цветовая палитра. Режим обеспечивает высокоскоростные обновления хорошего качества.

Такой режим применяется при взаимодействии пользователя с интерфейсом, например, при пролистывании или нажатии на экран.

UPDATE_MODE_ADAPTIVE

Этот режим представляет собой сочетание двух предыдущих. В случае, если изображение на EPD постоянно меняется, включается режим UPDATE_MODE_HIGH_SPEED. Как только изображение переходит в статичное состояние, включается режим UPDATE_MODE_HIGH_QUALITY.

Режим UPDATE_MODE_ADAPTIVE применяется для сочетания высокой скорости обновления и качества изображения.

Различием между режимами UPDATE_MODE_ADAPTIVE и UPDATE_MODE_HIGH_SPEED является скорость реакции на первое взаимодействие пользователя с экраном. В режиме UPDATE_MODE_ADAPTIVE скорость немного меньше.

Для настройки режимов используйте функцию com.yotadevices.sdk.Epd.setUpdateMode():

    public static void setUpdateMode(final View view, final int updateMode)

Параметр view должен быть определен в Activity (DecorView) как rootView. В обратном случае, rootView установится, как только будет найден в иерархии.

Полное обновление (Full Update)

Режим полного обновления одновременно обеспечивает хорошее качество изображения и устраняет эффект гостинга (ghosting). Как только происходит полное обновление, на EPD происходит «мигание».

Режим полного обновления полезно применять:

– при новых событиях, происходящих на EPD, например, при старте новой Activity или открытии диалогового окна;

– для устранения эффекта гостинга (ghosting).

https://yotaphone.com/media/3_simplified+sdk_full_update.gif

Для полного обновления изображения на экране используйте функцию com.yotadevices.sdk.Epd.fullUpdate():

    public static void fullUpdate(final View view, final boolean now)

Параметр view должен быть определен в Activity (DecorView) как rootView. В обратном случае, rootView установится, как только будет найден в иерархии.

Если параметр now принимает значение «true», то сразу же происходит полное обновление. Если же параметр now принимает значение «false», то обновление будет доступно, как только произойдут изменения на экране.