博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android studio 编译NDK android studio 生成.so文件
阅读量:4967 次
发布时间:2019-06-12

本文共 1257 字,大约阅读时间需要 4 分钟。

 

详细配置使用请移步:

 

 

android studio NDK 编译

 

第一步:

app/build.gradle下面

添加代码:

        ndk {

            moduleName "app" // <-- This is the name of my C++ module!
            cFlags "-DANDROID_NDK " // Define some macros
            ldLibs "EGL", "GLESv3", "dl", "log"         // Link with these libraries!
            stl "stlport_shared"
        }

具体如下:

 

 

第二步:

local.properties文件中 配置好本地NDK的路径,比如我的:

ndk.dir=/Users/cinba/Library/android-ndk-r10e

sdk.dir=/Users/cinba/Library/android-sdk

 

第三步:

在main下面建立jni文件夹:吧相关的文件放进来

 

第四步:

然后 build-> make projectso文件就生成好了;

位置在 目录 app/build/intermediates/ndk/下面;

 

 

第五步:

将生成好的so文件copy到我们的jniLibs文件夹中即可;

 

补充:

 

这样配置每次都会自动编辑c文件,如果不要每次都ndk编译话,把gradle中的ndk配置注释掉,然后so文件copy到我们的jniLibs中即可!
 
解决办法:
在gradle.properties 文件里面添加 
android.useDeprecatedNdk=true 后重新编译即可
 
遇到的问题:
 
make.exe: *** No rule to make target `D:\AndroidStudioProjects\project\app\build\intermediates\ndk\umeng\debug\obj/local/arm64-v8a/objs/app/D_\AndroidStudioProjects\project\app\src\main\jni', needed by `D:\AndroidStudioProjects\project\app\build\intermediates\ndk\umeng\debug\obj/local/arm64-v8a/objs/app/D_\AndroidStudioProjects\project\app\src\main\jni\tag.o'.  Stop.
 
 
在Windows下NDK一个bug,当仅仅编译一个文件时出现会出现此问题,解决方法就是
再往jni文件夹加入一个空util.c文件即可
问题参考资料:http://blog.csdn.net/sodino/article/details/41946607
 
 
 
 

 

转载于:https://www.cnblogs.com/androidxiaoyang/p/5403955.html

你可能感兴趣的文章
mysql addtime() 函数
查看>>
mysql 根据日期时间查询数据
查看>>
mysql sin() 函数
查看>>
mysql upper() 函数
查看>>
mysql 子查询
查看>>
mysql 自联结
查看>>
mysql union 组合查询
查看>>
socket tcp
查看>>
spiral-matrix-ii &i 生成顺时针序列
查看>>
python set集合方法总结
查看>>
python考点
查看>>
DataMining--Python基础入门
查看>>
单片机复位电路
查看>>
php json_decode失败,返回null
查看>>
获取单选按钮选中的值
查看>>
oracle 分页
查看>>
助教学期总结
查看>>
绘制基本 图形之矩形与多边形
查看>>
3-day3-list-truple-map.py
查看>>
02: djangorestframework使用
查看>>