有了新版本(4.8,r9)的交叉编译器(http://developer.android.com/tools/sdk/ndk/index.html),在Android下享受c++11带来的爽快体验变得很轻松。
本文在Linux环境下(Lubuntu 13.04)命令行创建一个NDK项目,简单测试了一些c++11的特性,包括:lambda表达式,智能指针,多线程和锁,用起来很稳定。
打算将项目用c++11特性重构的朋友可以放心使用,不必担心android端无法支持。
步骤如下:
1.直接拷贝NDK的例子,hello-jni
2.项目jni文件夹下,增加Application.mk文件,内容如下:
NDK_TOOLCHAIN_VERSION:=4.8
APP_STL:=gnustl_static
第一句使用最新版本的编译器,第二句使用stl。
3.改变Android.mk,如下:
LOCAL_PATH:=$(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE:=hello-jni
LOCAL_SRC_FILES:=he