Android NDK和渲染到动态壁纸

时间:2011-01-28 22:12:33

标签: android bitmap android-ndk

我正在四处寻找开始学习NDK的过程,并考虑到一个特定的项目:

我想从NDK端不断渲染更改的位图,以便能够在动态壁纸中显示它。

(因此我不是在谈论渲染到OpenGL纹理,而是渲染到位图)

我google了一下,发现有一个选项可以直接操作Bitmap像素。但我也发现文档说这个功能仅在Android 2.2之后才可用。 而且我想在我的动态壁纸中支持2.1。

另一方面,我发现了几个做类似事情的项目 - 从ndk渲染一些东西并在动态壁纸中显示它。他们的工作是2.1。例如:精彩Video Live Wallpaper,我认为Shake Them All Live Wallpaper会做同样的事情。

所以问题是 - 除了直接操作位图数据之外,我是否缺少一些其他方式对LW进行连续渲染? 或者其他一些我错了? :)

1 个答案:

答案 0 :(得分:5)

据我所知,使用NDK渲染并在2.2之前使用jnigraphics的其他项目实际上在项目中包含该库并将其加载为第3方库。

有关如何执行此操作的详细信息,请参阅PREBUILT_SHARED_LIBRARYandroid-ndk-r5b/docs/ANDROID-MK.html的说明。

你可以在:

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

当然,我不知道是否允许重新分配NDK的一部分(也许其他人可以权衡这一点),但显然在Android 2.2之前使用jnigraphics的唯一劫持只是它在早期版本中不存在这一事实。

希望有所帮助。