西西软件园多重安全检测下载网站、值得信赖的软件下载站!
软件
软件
文章
搜索

首页编程开发Android → 使用NDK7开发无需cygwin、自带编译器

使用NDK7开发无需cygwin、自带编译器

相关软件相关文章发表评论 来源:西西整理时间:2013/8/2 16:37:41字体大小:A-A+

作者:西西点击:146次评论:0次标签: eclipse

  • 类型:编程工具大小:13.8M语言:英文 评分:5.5
  • 标签:
立即下载

NDK从7开始自带编译器,在windows上无需配置cygwin的环境。

在eclips中配置NDK路径

eclipse中点击菜单栏window-Perferences,配置NDK的路径。

在工程中添加native lib

新建一个空白的Android工程,在根目录上点击右键Adnroid Tools - Add Native Support...

在弹出的对话框中输入要新建的lib的名称,点击Finish,在工程目录下会多出一个jni文件夹,里面有一个空白的cpp文件和一个Android.mk文件

Android.mk文件的内容是

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := TestJni
LOCAL_SRC_FILES := TestJni.cpp

include $(BUILD_SHARED_LIBRARY)

TestJni就是要加载的lib的名称,LOCAL_SRC_FILES 是资源文件的路径。

hello jni


MainActivity.java代码如下:

package com.example.testjni;

import android.os.Bundle;
import android.app.Activity;
import android.widget.TextView;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        TextView textView = new TextView(this);
        textView.setText(helloFromJni());
        setContentView(textView);
    }
    
    public native String helloFromJni();
    
    static {
        System.loadLibrary("TestJni");
    }
}

TestJni.cpp代码如下:

#include 

extern "C" jstring Java_com_example_testjni_MainActivity_helloFromJni(JNIEnv *env, jobject thiz) {
    return env->NewStringUTF("Hello From Jni");
}

直接运行程序,可以在Console窗口中看到NDK build的输出

有一点要注意:由于我使用的是x86的Android虚拟机来运行,所有使用的是x86的编译器。制定编译器的方法是在jni目录新建一个Application.mk的文件,输入以下内容

#APP_ABI := armeabi
APP_ABI := x86
#APP_ABI := armeabi armeabi-v7a x86 mips mips-r2 mips-r2-sf
#APP_ABI := all
APP_STL := stlport_static

如果是普通arm处理器的Android手机,使用APP_ABI := armeabi,如果是x86处理器的,使用APP_ABI := x86,等等。

如果APP_ABI := all,会编译所有指令的so。

运行结果如下:

至于C/C++的编译是怎么实现的,我们可以查看一下工程的Properties

在Builders里面有多了两项,一个是CDT Builder,一个是Scanner Configuration Builder。

现有的工程添加Builder

如果工程里面已经有jni目录了,但是没有配置C/C++的编译器,高手们可以自己添加Builder,对于我这种爱投机取巧的小菜鸟,工程右键菜单,新添加一个空白的so,然后再删除,CDT Builder和Scanner Configuration Builder就出来了。

Android NDK R9 官方最新版:http://www.cr173.com/soft/66623.html

    app制作
    (8)app制作
    一款好的不仅需要有创意的开发人员还要有一款合适的制作软件,有时候一款好用的制作软件可以让开发人员节省很多不必要的时间。另外对于一些不懂编程的人员来说制作一款也不是没有可能的,有些功能强大的制作软件可以让完全不懂编程的人也能制作出一些精美的来,比如一些公司的产品展示这类不需要有自己特色的就可以通过制作软件轻松做出来。这里西西给大家收整理了一些好用的制作软件下载,希望对大家有所帮助。...更多>>
    • appBookv1.0 官方版

      07-04 / 132.6M

      推荐理由:appBook 一次编辑多平台发布 轻松拥有自己的app,appBook是全球首家运行在PC和Mac的移动平台应用编辑制作软
    • 安卓平台反编译神器(Apktool)v6.0.

      02-19 / 13.0M

      推荐理由:Apktool,一款安卓移动平台上的反编译利器!Apktool现已完美兼容Android5.0L,使用它可以修改软件应用名称,
    • myeclipse 10.0

      11-03 / 886M

      推荐理由:MyEclipse 10使用最高级的桌面和Web开发技术,包括 HTML5 和 Java EE 6,支持 JPA 2.0、JSF 2.0 、Eclipsel
    • 移动应用开发工具(AppCan IDE)V3.1

      11-14 / 421.8M

      推荐理由:AppCan应用使用HTML5、CSS3和JavaScript语言编写,通过AppCan IDE提供的本地打包工具或在线编译系统生成可在
    • appMaker中文版v1.0 官方免费版

      03-06 / 315.8M

      推荐理由:appMaker中文版是一款免费的app制作软件,可以制作各种展示类的app。如:移动互动电子书、电子杂志、地产楼
    • 安卓开发(Google Android SDK)r24.

      05-15 / 85.8M

      推荐理由:Google Android SDKAndroid是Google自己研发的手机平台操作系统,该平台基于开源软件Linux,由操作系统、中
    eclipse
    (119)eclipse
    是对的扩展,利用它我们可以在数据库和的开发发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的集成开发环境,包括了完备的编码调试测试和发布功能,完整支持,,,,,,,。分类在结构上,的特征可以被分为类模型开发工具开发工具应用程序服务器的连接器项目部署服务数据库服务整合帮助...更多>>
    eclipse中文版下载
    (27)eclipse中文版下载
    是一个开放源代码的基于的可扩展开发平台。还包括插件开发环境,,这个组件主要针对希望扩展的软件开发人员,因为它允许他们构建与环境无缝集成的工具。它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,附带了一个标准的插件集,包括开发工具,。汉化方法把语言包中的,文件夹直接覆盖到安装目录中,或者把汉化包放到目录下面。常用快捷键.快速修复.删除当前行.复制当前行到下一行.或者说是空格由于后者与输入法...更多>>
    JAVA软件
    (60)JAVA软件
    软件下载,编程软件下载专题有多款适合编程爱好者学习使用的软件,我们提供了适用于开发者使用的相关软件的各个版本跟新的下载地址,以方便各位爱好者使用学习。如果您有什么好的编程软件可以向我们提供分享下载,如果下载的软件有什么问题也可以向我们提供建议,祝程序员们学习愉快软件开发其实可以不用其他软件的。只需要安装了工具包即可,这个是必须的。并且一定要配置好系统的环境变量。这个可以到网上去查,网上很多。然后进...更多>>

    相关评论

    阅读本文后您有什么感想? 已有人给出评价!

    • 8 喜欢喜欢
    • 3 顶
    • 1 难过难过
    • 5 囧
    • 3 围观围观
    • 2 无聊无聊

    热门评论

    最新评论

    发表评论 查看所有评论(0)

    昵称:
    表情: 高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲
    字数: 0/500 (您的评论需要经过审核才能显示)