Android(安卓)Studio 引入编写好的.so库
16lz
2021-01-24
关于如何搭建Android NDK开发环境,并编译出相应的.so文件和jar包,请参阅我之前写的一篇文章《eclipse配合Android Studio部署Android NDK开发环境》
如果自己编写好了.so库,那么如何连同jar包引入Android Studio,就是本次所要讨论的问题
百度了好多办法都没啥用,最后从老项目中找到的解决办法
首先在main文件夹下新建一个文件夹jniLibs,与java文件夹并列,把.so文件放到armeabi文件夹下
同样在main下面再建一个libs文件夹,把刚刚生成的jar包拖进来
右击这个jar包,点击add to libraries
add 成功之后,build.gradle会多出一行
compile files('src/main/libs/AlxNdk.jar')完整的build.gradle如下
apply plugin: 'com.android.application'android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "com.example.administrator.jnidemo" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }}dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.2.0' compile 'com.android.support:design:23.2.0' compile files('src/main/libs/AlxNdk.jar')}
这样我们就可以在Andorid Studio直接调用这个native方法了,比如
TextView tv1 = (TextView) findViewById(R.id.tv1);tv1.setText(""+JNIUtils.getStringFromC(20,30));
更多相关文章
- android 菜单导航 (Fragment + RadioGroup)
- Android(安卓)10适配注意的问题
- android 判断Apk是否签名和 签名是否一致
- 使用Android(安卓)Studio开发NDK程序时出现couldn't find "lib×
- Android如何通过shareduserid获取系统权限
- Jenkins+Ant+Android+Robitium 实例详解(打包app,执行Robotium测试
- Android(安卓)gradle proguard 代码混淆详解
- 一篇胎死腹中的Android文章——Dex文件结构解析
- 《Google+Android开发入门与实践》书中googleApi学习之iTracks