草庐IT

java - 安卓NDK : Application targets deprecated ABI(s): armeabi error after update NDK

昨天,在更新NDK后我遇到了这些错误:Error:(81)AndroidNDK:ApplicationtargetsdeprecatedABI(s):armeabiError:(82)AndroidNDK:SupportfortheseABIswillberemovedinafutureNDKrelease.此链接将我定向到setup-app.mk行上的文件_deprecated_abis:=$(filter$(NDK_DEPRECATED_ABIS),$(NDK_APP_ABI))ifneq($(_deprecated_abis),)$(call__ndk_warning,Appli

android - 在 Android NDK 中将字符串传递给 C 代码

程序应该从SD卡中获取图像并调整其亮度。图像是通过NDKC代码从SD卡中获取的。需要注意的是,描述图像路径的字符串是通过JNI传递给NDK的。Java代码:privatevoidadjustBrightness(){imagePath=(Environment.getExternalStorageDirectory().getPath()+"earthglobe.jpeg").toCharArray();brightness(imagePath,brightness);}publicnativevoidbrightness(char[]imagePath,floatbrightness

Android NDK - 它支持直接的 ARM 代码还是只支持 Thumb

我被要求评估我们产品的Android平台,我正在考虑各种选择,我现在只是触及表面,困扰我的一件事是我看不到如何编译代码纯ARM代码(没有Thumb),我知道Thumb运行速度较慢,我们需要代码关键部分的性能。我认为它应该只是在Android.mk的LOCAL_CFLAGS中设置-march标志文件,但我无法让它工作...有人能帮忙吗? 最佳答案 在Android.mk中为模块指定以下标志将直接编译ARM代码。LOCAL_ARM_MODE:=arm启用优化也可能有帮助:LOCAL_CFLAGS:=-O3

Android NDK OpenGL ES 2.0 纹理间距

有什么方法可以在opengles2.0中使用与其宽度不同的间距来blit纹理。通常我会通过使用PBO或通过glPixelStore调整GL_PACK_ROW_LENGTH来解决这个问题。然而,Android平台上似乎既不存在用于绑定(bind)缓冲区的GL_PIXEL_UNPACK_BUFFER也不存在GL_PACK_ROW_LENGTH。glTex(Sub)Image2D不支持这个。有什么建议吗? 最佳答案 引用@HalsafarInsomescenarios,thiscanbesolvedbyadjustingtextureco

android - 控制 Android NDK 中的编译器标志?

我知道我可以使用LOCAL_CFLAGS将参数传递给编译器。但是,ndk-build在我的LOCAL_CFLAGS之后插入选项,因此它们优先。例如,我想指定-Ofast,但是ndk-build在我自己的标志后面添加了-O2,因为只有最后一个选项是有任何影响的那个,我无法使用某些优化标志集测试我的代码。有没有办法强制我的LOCAL_CFLAGS成为构建命令的最后一个选项,或者禁止ndk-build使用某些标志?例如,我的LOCAL_CFLAGS设置为:-Wall-Wno-psabi-Ofast-DCP_USE_DOUBLES=0-DUSE_CHIPMUNKndk-build对g++的调用

java - Android NDK 编译报错 NDK_PROJECT_PATH=null

我尝试运行ijkplayer,但收到此错误。C:\ndk\ndk-build.cmdNDK_PROJECT_PATH=null我认为是build.gradle的问题,但我不知道是什么。我的ndk目录在c:\ndk上,我有ndk32位。感谢您的帮助。谢谢。 最佳答案 您的构建(gradle?)没有将项目根目录的正确路径传递给ndk-build.cmd。您可以从命令行运行ndk-build.cmd。打开命令提示符,cd进入您的模块文件夹(它应该有jni文件夹),然后运行​​c:\ndk\ndk-build.cmd它将使用当前路径作为ND

java - 安卓 NDK 计时器

我用c编写了一段代码来计算一段C代码花费了多长时间,然后尝试将它报告回Java代码。但问题是定时器差分总是返回为零。这是原生C#include#include#include/*sleep()*/#include#includejstringJava_com_nsf_ndkfoo_NDKFooActivity_invokeNativeFunction(JNIEnv*env,jobjectjavaThis){time_tstart,end;start=time(NULL);if(start==(time_t)-1){return1;}sleep(5);end=time(NULL);cha

android - 如何在 Android NDK 中创建线程?

谁能告诉我如何在AndroidNDK中创建线程?我正在将一些C++代码从Win32移植到Android,我不知道与Win32APIAfxBeginThread()对应的NDKAPI是什么。谢谢! 最佳答案 AndroidNDK(部分)支持POSIX线程,因此您可以使用pthread_create. 关于android-如何在AndroidNDK中创建线程?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

android - 是否可以使用 NDK 创建 UI 元素? - Android 文档中缺少规范

阅读相关文档后,我不知道是否可以仅使用使用NDK编译的C++/C代码来创建按钮或其他用于获取用户输入的UI元素。当我想处理需要保持焦点的“窗口”或Activity时没有问题,但我不知道如何构建包含用于回调和用户输入的元素的UI。奇怪的是,有一个窗口框架,但没有任何UI元素的回调痕迹。我可以使用NDK构建触摸按钮或虚拟游戏handle吗?我很感激我们所做的努力以及我们越来越接近我的观点这一事实,但显然我没有很好地解释自己。我找到这张图片here现在我的问题和这个问题的重点是:假设我可以放置和绘制这个虚拟操纵杆,我如何才能仅检测运动并使用Android和Joystick.onUp或Joys

安卓NDK : calling java method from JNI C class

我有JNI方法,我正在尝试调用Java方法。这是我的JNI代码voidDummySink::afterGettingFrame(unsignedframeSize,unsignednumTruncatedBytes,structtimevalpresentationTime,unsigned/*durationInMicroseconds*/){__android_log_print(ANDROID_LOG_VERBOSE,"RTSP","Frame:%c",propRec->sPropBytes);jmethodIDmid;jclasshandlerClass=env9->FindC