AndroidStudio旧版NDK使用


1、下载NDK配置环境变量
  添加 NDK_HOME D:\android-ndk-r11b(根据实际路径)
  Path中添加 %NDK_HOME%/;

  cmd执行ndk-build查看是否成功

2、SDK Location中配置NDK

3、生成头文件
  新建类定义native方法

public class Hello {
    public native String helloC();
}

 

  AndroidStudio命令行切换到debug目录执行
  javah -jni cn.fbtrip.ndkdemo.Hello

4、创建c文件
  拷贝上步生成的头文件
  main文件下创建jni,新建c/c++源文件
  拷贝mk文件,进行配置

5、mk文件修改

  LOCAL_PATH := $(call my-dir)
  include $(CLEAR_VARS)

  LOCAL_MODULE := hello
  LOCAL_SRC_FILES := cn_fbtrip_ndkdemo_Hello.c

  include $(BUILD_SHARED_LIBRARY)


  我们只需要修改LOCAL_MODULE和LOCAL_SRC_FILES两个参数即可。
  LOCAL_MODULE参数是指定编译后的目标文件的名称,其实编译好的目标文件名为libhello.so,
  LOCAL_SRC_FILES指定了要编译的源文件。

  APP_ABI := all

6、生成so文件


  切换到main路径下执行ndk-build
  修改jni库目录
  将app->src->main->libs改成
  app->src->main->jniLibs

7、旧版需要配置支持ndk
  根目录gradle.properties
  在文件的最末行添加:
  android.useDeprecateNdk=true

8、so库的调用

	public class MainActivity extends AppCompatActivity {
	
	    static {
	        System.loadLibrary("hello");
	    }
	
	    @Override
	    protected void onCreate(Bundle savedInstanceState) {
	        super.onCreate(savedInstanceState);
	        setContentView(R.layout.activity_main);
	
	        Hello h = new Hello();
	        System.out.println("------>"+h.helloC());
	
	    }
	
	}

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM