Android Studio上的JNI
来源:互联网 发布:博途v13编程软件下载 编辑:程序博客网 时间:2024/06/05 08:08
首先,为AS配置NDK。
随后,在AS中新建一个 class 命名为 AacEncoder,并在内部声明native方法。
package com.whiteskycn.encordaac;public class AacEncoder { static{ System.loadLibrary("aacdec"); } public native void initAACEncoder(); public native void sendRecordData(byte[] data); public native void stopSendRecodData();}
编译该工程文件,找到对应的class文件,通过javah来生成c++的头文件
lei@lei-pc:~/StudioProjects/EncordAAC$ cd ./app/build/intermediates/classes/debug/lei@lei-pc:~/StudioProjects/EncordAAC/app/build/intermediates/classes/debug$ lei@lei-pc:~/StudioProjects/EncordAAC/app/build/intermediates/classes/debug$ lsandroid comlei@lei-pc:~/StudioProjects/EncordAAC/app/build/intermediates/classes/debug$ lei@lei-pc:~/StudioProjects/EncordAAC/app/build/intermediates/classes/debug$ lei@lei-pc:~/StudioProjects/EncordAAC/app/build/intermediates/classes/debug$ javah -jni com.whiteskycn.encordaac.AacEncoderlei@lei-pc:~/StudioProjects/EncordAAC/app/build/intermediates/classes/debug$ lei@lei-pc:~/StudioProjects/EncordAAC/app/build/intermediates/classes/debug$ lsandroid com com_whiteskycn_encordaac_AacEncoder.hlei@lei-pc:~/StudioProjects/EncordAAC/app/build/intermediates/classes/debug$
在AS中新建jni目录,将该头文件拷贝过去,并创建对应的c++文件。
接下来在app module目录下的build.gradle中做如下配置:
android { compileSdkVersion 24 buildToolsVersion "25.0.2" defaultConfig { applicationId "com.whiteskycn.encordaac" minSdkVersion 19 targetSdkVersion 24 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" ndk{ //add line 0 moduleName "aacdec" //add line 1 abiFilters "armeabi", "armeabi-v7a", "x86" //add line 2 } //add line 3 } sourceSets { //add line 4 main { //add line 5 jni.srcDirs = [] //add line 6 } //add line 7 } //add line 8 buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }}
最后,在gradle.properties中添加如下代码:
Android.useDeprecatedNdk=true
好,大功告成。
阅读全文
0 0
- Android Studio上的JNI
- Android Studio 上JNI开发
- Android Studio上编译JNI程序
- Android studio JNI的使用
- android studio上的jni编译流程以及Android.mk文件的处理。
- android studio上的jni编译流程以及Android.mk文件的处理
- Android上JNI的调试
- Android上JNI的调试
- Android上JNI的调试
- Android上JNI的调试
- Android上JNI的调试
- android studio jni 移植一个VS上开发的项目 使用了opencv
- android studio之jni(上)生成so文件
- android studio之jni(上)生成so文件
- Android Studio JNI javah遇到的问题
- Android Studio 中使用JNI的步骤
- Android Studio下JNI的使用案例
- Android studio 下JNI的使用
- 多线程归并排序
- 利用docker在windows下安装TensorFlow
- 欢迎使用CSDN-markdown编辑器
- HashMap和有序LinkedHashMap实现对比
- linux_进程
- Android Studio上的JNI
- 自注册DM(七)中国联通自注册适配包手册
- Python3多线程编程
- NSParameterAssert(URLString)为nil
- 属性动画和帧动画的使用
- apk文件下载无法获大小问题
- 【怎样写代码】实现对象的复用 -- 享元模式(二):解决方案
- jQuery基础
- eclipse插件findBugs安装及使用过程中遇到的错误