Android Studio JNI编程

操作步骤:

配置好NDK开发环境

  1. 指明ndk路径

    可以在local.properties中手动输入ndk路径,或者用Studio菜单栏File--Project Structure--Android NDK Location中点击选中ndk路径。

  2. 修改build.gradle配置

    工程中共有两个build.gradle配置文件,我们要修改的是在<Project>\app\build.gradle这个文件(就是Module:app)。为其在defaultConfig分支中增加上

    ndk {

    moduleName "JNITest"  //生成的so名字为libJNITest.so

    ldLibs "log", "z", "m"

    abiFilters "armeabi", "armeabi-v7a", "x86"

    }

编写JNI程序步骤:

1.首先编写一个上层.java文件,用来调用底层JNI函数。在该文件内声明要调用的本地方法。

public class JNITest

{

static

{

System.loadLibrary("JNITest");

}

public static String getTextFromJNI()

{

return getText();

}

private native static String getText();

}

2.编写好上层JAVA程序后,点击Android Studio菜单栏Build--Make Project,生成JNITest.class文件。

3.dos进入<Project>\app\build\intermediates\classes\debug中,执行javah com.jni.JNITest,成功后便会看到生成一个.h文件。

4.将该.h头文件拷贝到jni目录中(如不存在jni目录,则在Studio中的main目录下右键生成一个jni目录)。

5.在jni目录下新建一个.c文件,进行c程序编写。

时间: 2024-10-08 08:22:01

Android Studio JNI编程的相关文章

Android Studio JNI编程以及NDK环境配置

1. 新建一个工程,并添加JNI文件夹. 2. 在生成的jni文件夹中添加cpp文件. 3. 在添加的cpp文件添加代码.这里我们采用动态注册的方式来添加jni函数,比较方便,不需要用javah生成.h文件 #include <jni.h> #include <android/log.h> #include <assert.h> #include <stdio.h> /* 输出Log的宏 */ #ifndef LOG #define LOG_TAG &quo

实现Android Studio JNI开发C/C++使用__android_log_print输出Log

相信很多人在刚开始学习Android JNI编程的时候,需要输出Log,在百度Google搜索的时候都是说需要在Android.mk中加入LOCAL_LDLIBS+= -L$(SYSROOT)/usr/lib -llog ,其实这是在eclipse开发上的方式,Android Studio并不是这么使用. Android Studio的Android.mk是自动生成的,就算修改也是没用了,实际Android Studio的Android.mk是根据gradle文件生成的,那么就需要修改gradl

Android Studio Ndk 编程

现在开发Android程序基本都已经从Eclipse转到了Android Studio了, 最近项目需求, 需要用到ndk编程, 于是就折腾了一下. 开发环境 Android Studio 1.5.1 android-ndk-r10e gradle 2.8 首先我们新建一个工程叫做NdkDemo, 创建后的工程目录结构如下 然后我们打开gradle.properties文件, 在文件的尾端写一句, 如果没有写这一句会编译不通过 android.useDeprecatedNdk=true 接着配置

Android Studio JNI体验

最近项目中需要调用c/c++的实现,Android是支持JNI的,所以体验了一下JNI的全过程 1. 前期环境准备 (1) 下载NDK,网址是https://developer.android.com/ndk/downloads/index.html, 国内用户需要翻墙. 目前官网上mac版最新的是android-ndk-r10e-darwin-x86_64.bin, 文件比较大,300多M. 下载下来后,解压到相应目录,备用.解压命令如下: ndk$ chmod a+x android-ndk

第一个Android studio JNI程序

现在网上有很多实用JNI的教程,本文主要用于记录自己实现的方法和遇到的坑. 第一步,下载NDK. NDK可以去谷歌Android developer上下载.国内也有些中国版网站可以下载. 第二步,编写java类,这个类是java和c/c++交互的中介,定义一些native的方法,具体实现由c/c++完成. package com.example.jni; /** * Created by alexjie on 2017/5/14. */ public class JNIDemo { static

Android?Studio?NDK编程-环境搭建及Hello!

一,下载 安装android-ndk开发包 NDK各个版本链接二,新建项目NDKDemo,选择空Activity就可以:(注:Android studio 2.2,可通过SDK Tools 添加LLDB,CMake,更方便的开发jni程序了) 三,按F12,配置项目NDK路径: 四,在MainActivity中添加如下代码: static {    System.loadLibrary("MyJni");//导入生成的链接库文件}public native String getStri

Android Native jni 编程入门

在某些情况下,java编程已经不能满足我们的需要,比如一个复杂的算法处理,这时候就需要用到jni(java native interface)技术: jni 其实就是java和c/cpp之间进行通信的一个接口规范,java可以调用c/cpp里面的函数,同样,c/cpp也可以调用java类的方法: jni开发工具ndk的安装:在最新的ndk版本中,安装ndk很简单,只需要装ndk的路径配置到系统环境变量中即可:在编译的时候,进入工程根目录:执行命令  ndk-build  即可完成编译: 下面就通

【转贴】-- Android Native jni 编程入门

原帖地址:http://www.cnblogs.com/a284628487/p/4318698.html 在某些情况下,java编程已经不能满足我们的需要,比如一个复杂的算法处理,这时候就需要用到jni(java native interface)技术: jni 其实就是java和c/cpp之间进行通信的一个接口规范,java可以调用c/cpp里面的函数,同样,c/cpp也可以调用java类的方法: jni开发工具ndk的安装:在最新的ndk版本中,安装ndk很简单,只需要装ndk的路径配置到

[Android Pro] Android studio jni中调用Log输出调试信息

reference to : http://www.linuxidc.com/Linux/2014-02/96341.htm Android 开发中,java 可以方便的使用调试信息Log.i, Log.d ...,Jni层可否使用呢?答案是肯定的. 1 为方便使用,先进行宏定义: eben_hpc_log.h内容如下: #ifndef _Included_hpc_Log#define _Included_hpc_Log#ifdef __cplusplusextern "C" {#en