我正在四处寻找开始学习NDK的过程,并考虑到一个特定的项目:
我想从NDK端不断渲染更改的位图,以便能够在动态壁纸中显示它。
(因此我不是在谈论渲染到OpenGL纹理,而是渲染到位图)
我google了一下,发现有一个选项可以直接操作Bitmap像素。但我也发现文档说这个功能仅在Android 2.2之后才可用。 而且我想在我的动态壁纸中支持2.1。
另一方面,我发现了几个做类似事情的项目 - 从ndk渲染一些东西并在动态壁纸中显示它。他们的工作是2.1。例如:精彩Video Live Wallpaper,我认为Shake Them All Live Wallpaper会做同样的事情。
所以问题是 - 除了直接操作位图数据之外,我是否缺少一些其他方式对LW进行连续渲染? 或者其他一些我错了? :)
答案 0 :(得分:5)
据我所知,使用NDK渲染并在2.2之前使用jnigraphics
的其他项目实际上在项目中包含该库并将其加载为第3方库。
有关如何执行此操作的详细信息,请参阅PREBUILT_SHARED_LIBRARY
中android-ndk-r5b/docs/ANDROID-MK.html
的说明。
你可以在:
找到jnigraphicsandroid-ndk-r5b/platforms/android-8/arch-arm/usr/lib/libjnigraphics.so
当然,我不知道是否允许重新分配NDK的一部分(也许其他人可以权衡这一点),但显然在Android 2.2之前使用jnigraphics
的唯一劫持只是它在早期版本中不存在这一事实。
希望有所帮助。