Android NDK返回位图像素的字节数组

时间:2013-09-17 03:34:34

标签: java android bitmap android-ndk

我必须对位图进行一些处理,并且我试图通过锁定Bitmap像素来使用NDK将字节数组返回给java。完成java处理后,我(最后)调用另一个NDK函数来解锁位图的像素。

我尝试了一些事情,但没有人工作过:

  • 返回java由锁定像素操作返回的void * (把它当作jbyteArray),没有用(sigsegv)。
  • 使用ByteBuffer也没有用,因为它只读(我需要从java操作它)。
  • 所有其他看似有用的方法,都会创建一个数组的副本......我试图避免这种情况以减少内存 消耗。

1 个答案:

答案 0 :(得分:0)

我通过完全在本机代码中操作数组来解决这个问题。使用byte []的所有Java代码都已移至JNI。

根据我的研究,我认为没有办法直接从Java操作Bitmap的字节数组。当然你可以操作一个副本,但我找不到任何方法直接使用本机位图的数据。

如果有人找到了办法,我想知道。

问候!