草庐IT

ndk-bundle

全部标签

android - 如何设置 Eclipse 的构建配置以生成正确的、可调试的 NDK 应用程序?

我们有一个AndroidNDK项目,它具有三种不同的构建配置:调试-armeabi调试-armeabi-v7a发布-aremabi+armeabi-v7a由于Android加载器中的一个已知错误,我们指定了单独的aremabi和armeabi-v7调试配置,如果指定了多个EABI,调试器可能会启动错误的EABI版本的应用程序,并且不会命中任何native断点(Moredetailshere,attheendofthedocument)。过去,我们编辑Application.mk文件并通过APP_ABI变量指定所需的EABI。我们希望避免这种手动编辑,并利用Eclipse的构建配置并自动

android - ndk-gdb 无法找到 gdb.setup

我正在尝试使用ndk-gdb调试我的原生android项目。当我运行命令ndk-gdb时出现错误Couldnotfindgdb.setupunder./libs/解释运行MacOSX,ndkr10e;使用ndk示例SanAngeles按照此处的步骤设置native调试https://developer.android.com/ndk/guides/ndk-gdb.html基本上我设置了android:debuggable="true",APP_OPTIM:=debug并使用ndk-buildNDK_DEBUG=1构建原生(这3个设置可能是多余的,但以防万一)使用antdebug、adb

android - Crashlytics ndk 更改类加载器路径

我正在尝试根据此处的说明配置crashlyticsndk:https://fabric.io/downloads/gradle/ndk将ndk部分添加到build.gradle后,具体是这些行://NDKKitcompile('com.crashlytics.sdk.android:crashlytics-ndk:1.1.2@aar'){transitive=true}我的应用程序崩溃并显示以下堆栈跟踪:11-1118:48:36.77928757-28757/com.example.myProjE/MyApp﹕CustomExceptionHandler.uncaughtExcept

android - 支持 64 位会导致在 build.gradle 中添加 ndk.abiFilters 时出错

大多数Android开发人员一定已经从谷歌那里得到消息,要求在2019年8月之前更新应用程序以支持64位架构。详细说明如下:Ensurethatyourappsupports64-bitdevices在我的应用程序中,我发现使用了32位库,因此我必须更新应用程序以支持64位架构。按照上面指南中的建议,我在build.gradle文件中添加了以下内容:ndk.abiFilters='armeabi-v7a''arm64-v8a''x86''x86_64'但是,之后,我在构建应用程序时遇到以下错误:Error:(35,0)Couldnotfindmethodarmeabi-v7a()for

android - 反编译(二进制,NDK)C 应用程序与 Java 应用程序(Dalvik 字节码)

嗯,因为我对再造很感兴趣,所以到目前为止我在Android再造上花了很多时间。尽管如此,我还是遇到了编译的二进制C代码(NDK)的问题,并且我知道将它反编译回C/C++比将DEX文件反编译回或多或少的Java资源。这是什么原因?我的意思是字节码由DalvikVM执行,如果是普通的二进制文件,则由真正的处理器直接执行。除了一些额外的仿真层外,两者非常相似,不是吗?我目前没有看到太大的差异,也没有看到这个问题的原因。你有什么信息可以告诉我为什么将一个普通的二进制文件(例如ELF或MSEXE)反编译回C源代码更加困难吗?谢谢。 最佳答案

android - 黑莓 Android 运行时与 NDK

我正尝试按照建议为黑莓重新打包Android应用程序here.该应用程序中有一个native(NDK/JNI)库。当我尝试为AppWorld构建时,我遇到了以下几种错误:uses-access-native:impact=5:com.myapp.MyClass所以从表面上看,NDK似乎与黑莓不兼容,就这样。但是,我找不到任何官方消息。已知问题列表表示不支持GoogleAPI,但只字未提NDK。请问官网是什么?有没有人用NDK库重新打包应用程序? 最佳答案 这里有个注释:https://bdsc.webapps.blackberry.

android - 中止 : HEAP MEMORY CORRUPTION on NDK env.(POCO 库、Sqlite3、Cocos2dx)

我在AndroidNDK环境中遇到'ABORTING:HEAPMEMORYCORRUPTION'问题。如果我使用ndk-gdb回溯,它主要发生在libc.so中的malloc/dlfree函数上经过长时间的跟踪问题,它主要发生在sqlite3_xxx函数调用中,这在iOSenv上绝对可以正常工作。我只是找不到我必须深入的地方。有没有人遇到过类似的问题并解决了? 最佳答案 我看到了内存问题,但没有看到您报告的'ABORTING:HEAPMEMORYCORRUPTION'。您必须找出哪个堆已损坏:Java堆还是C/C++堆。或者它可能是

Android NDK 返回错误 "undefined reference to ' rand'”

我正在尝试使用libvpx为Androidx86开发一个webm解码器.我通过以下命令构建了库并获得了“libvpx.a”。../configure--target=x86-android-gcc--disable-vp8-encoder--disable-vp9-encoder--disable-examples--sdk-path=$ANDROID_NDK_ROOT--enable-pic--enable-postproc当我在Windows上通过ndk-build使用这个库时,发生了错误。C:/android/[project]/jni/../plib/libvpx.a(post

android - Android NDK中使用"UnsatisfiedLinkError"时出现"dynamic_cast"

我是Android开发的新手,我遇到了下一个问题:当我使用使用"dynamic_cast"表达式的C++代码时-在模拟器上启动我的应用程序时出现"UnsatisfiedLinkError"。但是当我在没有它的情况下运行应用程序时-一切正常(我的意思是LogCat没有任何错误)我尝试在Android2.3.3上运行它。我用的是android-ndk-r7b。我的应用程序.mk:APP_OPTIM:=debugAPP_ABI:=armeabiAPP_STL:=gnustl_staticAPP_MODULES:=native_lab我的Android.mk:LOCAL_PATH:=$(cal

android - 如何使用 crashlytics 报告第三方 NDK 崩溃

我从GooglePlay控制台收到以下NDK崩溃报告,但在Crashlytics中没有。#00pc0000000000049c44/system/lib/libc.so(tgkill+12)#01pc00000000000473e3/system/lib/libc.so(pthread_kill+34)#02pc000000000001d535/system/lib/libc.so(raise+10)#03pc0000000000019081/system/lib/libc.so(__libc_android_abort+34)#04pc00000000000170e4/system/