Android Studio2.1上搭建ndk环境 Android NDK: Aborting... . Stop.a

发布于 2022-09-03 09:32:40 字数 1411 浏览 12 评论 0

我在Android Studio上集成ndk环境,直接用内置SDK tools下载的ndk,demo可以通过编译,但是一运行还没进入代码
就报这个错误:

图片描述

build中是这样写的:

sourceSets.main {
    res.srcDirs = ['src/main/res']
    jniLibs.srcDirs = ['src/main/jniLibs']
    jni.srcDirs = ['src/main/jni/']
}
buildTypes {
    debug {
        jniDebuggable = true
        ndk {
            moduleName "CipherUtils"             //生成的so名字
            abiFilters "armeabi", "armeabi-v7a", "x86"  //输出指定三种abi体系结构下的so库。
        }
    }
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        ndk {
            moduleName "CipherUtils"             //生成的so名字
            abiFilters "armeabi", "armeabi-v7a", "x86"  //输出指定三种abi体系结构下的so库。
        }
    }

网上找了一些方法也都没效果:
试过换ndk没用

也试过修改成这样:

sourceSets.main{
    jni.srcDirs=[]//据说这样写是防止自动生成,android.mk
}

这样是可以进入代码了,但是在System.loadLibrary("CipherUtils");的时候回崩溃,报找不到so的错误:

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/upyp.jnitest-2/base.apk"],nativeLibraryDirectories=[/data/app/upyp.jnitest-2/lib/arm64, /vendor/lib64, /system/lib64]]] couldn't find "libCipherUtils.so"

请问有有没有解决方法?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

っ〆星空下的拥抱 2022-09-10 09:32:40

可以先分析一下 apk 中是否有对应的 so。NDK 开发我觉得还是推荐使用 Android.mk 进行配置(或者 Cmake 的方式)。
只要在项目的 build.gradle 的 android 节点下添加

externalNativeBuild {
        ndkBuild {
            path 'src/main/jni/Android.mk'
        }
    }
放低过去 2022-09-10 09:32:40

哥们,你怎样解决的我也遇到了这个情况

高速公鹿 2022-09-10 09:32:40

http://blog.csdn.net/github_3... 你可以参考这个

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文