Android NDK и рендеринг на живые обои - PullRequest
5 голосов
/ 29 января 2011

Я просто искал возможность начать изучение NDK, имея в виду один конкретный проект:

Я хочу постоянно отображать изменяющееся растровое изображение со стороны NDK, чтобы иметь возможность отображать его на живых обоях.

(следовательно, я говорю не о рендеринге текстуры OpenGL, а о рендеринге в растровое изображение)

Я немного погуглил и обнаружил, что есть возможность напрямую манипулировать пикселями растрового изображения.Но я также обнаружил, что в документации сказано, что эта функция доступна только с Android 2.2.И я бы хотел поддержать 2.1 в моих живых обоях.

С другой стороны, я нашел несколько проектов, которые делают подобные вещи - рендерит что-то из ndk и показывает это в живых обоях.И они работают на 2.1.Примеры: замечательные Видео Живые Обои , и я думаю Встряхните Их Все Живые Обои делает то же самое.

Так что вопрос - я что-то упускаюДругой способ сделать непрерывный рендеринг в LW, кроме прямого манипулирования данными Bitmap?Или что-то другое, что я ошибся?:)

1 Ответ

5 голосов
/ 22 апреля 2011

Насколько я знаю, другие проекты, которые выполняют рендеринг с помощью NDK и используют jnigraphics до версии 2.2, фактически включают эту библиотеку в проект и загружают ее как стороннюю библиотеку.

См. Описание PREBUILT_SHARED_LIBRARY в android-ndk-r5b/docs/ANDROID-MK.html для получения дополнительной информации о том, как это сделать.

Вы можете найти jnigraphics в:

android-ndk-r5b/platforms/android-8/arch-arm/usr/lib/libjnigraphics.so

Конечно, я не знаю, еслина самом деле допустимо распространять часть NDK (возможно, кто-то другой может повлиять на это), но, видимо, единственная задержка с использованием jnigraphics до Android 2.2 - это просто тот факт, что его нет в более ранних выпусках.

Надеюсь, что помогает.

...