Android NDK环境搭建
在Android上要想开发出高效率的软件,还是须要用到C/C++语言,要想在Java上开发C/C++语言就须要在IDE上安装NDK;在Android的官网上SDK开发环境已经包括了ADT插件。最新的Android开发IDE能够到官网下载:http://developer.android.com/sdk/index.html
因为近期Android官网和google在国内常常进不去,我就把下载的放到网盘,有须要的能够去下载:http://pan.baidu.com/s/1hq3iBGw
准备的文件
在新版本号的ADT上安装NDK环境非常方便。我的ADT版本号是V22.0.5,版本号号在打开ADT载入时会显示出来
在官网上:http://developer.android.com/tools/sdk/ndk/index.html下载最新的NDK。NDK版本号在r7以上之后就集成了Cygwin。不须要单独去安装Cygwin
1、Eclipse配置
SDK配置
NDK配置,路径就是解压出来的NDK根文件夹
下面就来測试下NDK是否已经成功安装
随便新建一个Androidproject,加入Add Native Support
此时新建的project就多了一个jni文件夹
IDE有可能会报一个错误:
[2014-06-23 17:08:36 - Unable to launch cygpath. Is Cygwin on the path?] java.io.IOException: Cannot run program "cygpath": CreateProcess error=2, ϵͳÕҲ»µ½ָ¶
project右键。选择下面选项
环境变量设置NDKROOT,Value就是你解压出来的NDK文件夹
在这里配置的:${NDKROOT}/ndk-build.com就是下面脚本文件
这时再去Cleanproject就不会报错了
下面就来编写JNI的C++文件。可是没有代码提示,是因为没有导入头文件的原因
导入头文件方法,选择“Project Properties”
点击“Add"
此时再按"alt + /"就有代码提示
接下来就是编写代码
在NDKTest.cpp文件
#include <string.h>
#include <jni.h>jstring Java_com_dzt_ndktest_MainActivity_stringJNI(JNIEnv* env,jobject thiz){return env->NewStringUTF("Hello JNI 我的第一个JNI");
}
Android.mk文件是自己主动生成的,能够不用改动
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := NDKTest
LOCAL_SRC_FILES := NDKTest.cppinclude $(BUILD_SHARED_LIBRARY)
Activity类调用代码
package com.dzt.ndktest;import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);TextView tv = (TextView) findViewById(R.id.tv);tv.setText(stringJNI());}public native String stringJNI();static {System.loadLibrary("NDKTest");}
}
build project
成功通过
再执行程序,非常不幸。报错了
假设是c++文件须要加上extern "C",从C语言导出
改动代码例如以下
#include <string.h>
#include <jni.h>extern "C" {
jstring Java_com_dzt_ndktest_MainActivity_stringFromJNI(JNIEnv* env,jobject thiz) {return env->NewStringUTF("Hello JNI");
}
}
成功通过
源码下载:http://download.csdn.net/detail/deng0zhaotai/7540771
很多其它的样例能够到下面文件夹获取,这是NDK自带的样例。
转载于:https://www.cnblogs.com/mqxnongmin/p/10894763.html
Android NDK环境搭建相关推荐
- Windows环境下Android NDK环境搭建
转自:http://blog.csdn.net/pengchua/article/details/7582949 前面介绍Windows下Android 开发环境配置,主要是面向JAVA开发环境,对只 ...
- Android NDK 环境搭建
使用最新ndk,直接抛弃cygwin,曾经做Android的项目要用到NDK就必需要下载NDK,下载安装Cygwin(模拟Linux环境用的),下载CDT(Eclipse C/C++开发插件),还要配 ...
- Android NDK开发一 NDK环境搭建及cmake简介
1 前言 关于NDK的介绍可以查看官方的介绍: https://developer.android.com/ndk/guides/index.html 一句话总结NDK:NDK(Native Deve ...
- Windows下Android开发环境搭建和配置
关于Windows下Android开发环境搭建.配置方面文章,网上一搜一堆,为方便以后参考,权且做个记录,主要关注安装过程中的注意事项.对新手提醒的是,本文介绍SDK开发Android APK环境搭建 ...
- 【Android基础笔记01】Android开发环境搭建和HelloWorld
最近手头项目3.0版本要上线了, 没有那么多工作压力了, 抽空看了看之前在云笔记上做的笔记 都是一些基础知识 给大家分享出来吧 一.什么是Android?[了解 ] Android(中文俗称安卓)是一 ...
- Android开发环境搭建及常见问题解决方法
Android开发环境搭建及常见问题解决方法 参考文章: (1)Android开发环境搭建及常见问题解决方法 (2)https://www.cnblogs.com/rwxwsblog/p/476978 ...
- Android开发环境搭建全程演示(jdk+eclip+android sdk)
Android开发环境搭建全程演示(jdk+eclip+android sdk) http://files.cnblogs.com/Bany/Android%E5%BC%80%E5%8F%91%E7% ...
- Android Studio环境搭建
Android Studio环境搭建 个人博客 欢迎大家多多关注该独立博客. ###[csdn博客](http://blog.csdn.net/peace1213) 一直想把自己的经验分享出来,记得 ...
- Android开发环境搭建全程演示(jdk+eclipse+android sdk)
全程演示android开发环境的搭建过程,无需配置环境变量.所有软件都是写该文章时最新版本 一 相关下载 (1) java JDK下载: 进入该网页: http://java.sun.com/java ...
最新文章
- 生成邮件图片签名的链接Gmail、hotmail 等... ...
- XPath访问任意深度的XML数据
- 配置网络测试环境的批处理
- Linux 共享内存详解一
- pypi.python.org_在Pypi上发布自己的Python包
- Python刷题-2
- binlog关闭事务记录_MySQL的CrashSafe和Binlog的关系-爱可生
- C++函数内部实现的规则
- 网络从业人员职业规划路线图
- 单链表的逆置-C++实现(ok)
- STM32F4+ESP8266拟辉光钟设计(二)WS2812灯光控制
- 2D人体姿态估计 - Stakced Hourglass Network(SHN)个人理解
- linux设备的uuid,Linux设备中的UUID
- python学习笔记3
- 2020双周训练训练日志
- 软件测试面试题之自我介绍
- 根据value值动态的设置checkbox选中状态
- PID的理解与实现(二)
- 计算机网络(一):计算机网络概念、功能、组成
- JDBC连接Sql_Server_2005