android - Android NDK 的字节顺序

标签 android android-ndk

我正在使用我的新应用程序来处理从手机摄像头捕获的图像。我的手机是 Nexus S,2.3.4。

我用捕获的数据创建了一个 ARGB_8888 位图。我知道 ndk 镜像库,但它只支持 2.2 及更高版本。于是我把Bitmap的int[]传给NDK,发现颜色字节序是little-endian。

我搜索了 wiki,发现 arm 架构是双端的。 http://en.wikipedia.org/wiki/Endianness#Bi-endian_hardware

我的问题是如果arm是双端的,如何判断特定设备中的字节顺序?每次访问数据之前是否应该测试字节顺序?

最佳答案

直接来 self 的 Nexus S:

> import java.nio.*;
> System.out.println(ByteOrder.nativeOrder());
LITTLE_ENDIAN

还应该有一些方法可以在 NDK 中获取排序。

关于android - Android NDK 的字节顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6212951/

相关文章:

android - 如何在Android中设置XML全屏

Android - 在多个 Activity 中实现 LocationListener 的最佳方式

android - "-fpermissive"和 "include "在 linux c 编译器中不起作用

java - Android native 库从 aar 链接到另一个 native 库

android - 如何使用 ffmpeg 改变音频节奏和音调个性?

android - NotifyItemRemoved 抛出异常

java - Android:IllegalStateException: Activity 已被销毁

android - 在Android上使用Camera2进行OpenCV图像处理

android - 是否需要显式调用 system.loadLibrary 来访问 NativeActivity 子类中的 native 方法?

Android NDK 链接 OpenSSL