我想使用 android NDK 让我的 c++ 引擎在 android 上工作,而不必用 java 重写引擎。
android 的系统调用,例如触摸输入、加速度计、窗口和大多数 android 应用程序所需的所有其他东西是否可以从 c++ 调用?或者您是否需要制作自己的包装器以便 native 代码可以调用 android java 的东西?
如果可以的话,是否有某种 API 引用可以查看来自 native 代码的所有可能调用?
谢谢
最佳答案
Android NDK 为以下内容提供稳定的 API(请参阅 http://developer.android.com/tools/sdk/ndk/index.html):
- libc (C library) headers
- libm (math library) headers
- JNI interface headers
- libz (Zlib compression) headers
- liblog (Android logging) header
- OpenGL ES 1.1 and OpenGL ES 2.0 (3D graphics libraries) headers
- libjnigraphics (Pixel buffer access) header (for Android 2.2 and above).
- A Minimal set of headers for C++ support
- OpenSL ES native audio libraries
- Android native application APIS
不保证其他任何东西都适用于所有设备。
您可能还想看看 http://developer.android.com/reference/android/app/NativeActivity.html获取有关如何使用 native 代码实现 Activity 的信息。
关于java - Android NDK 中的系统调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11709267/