android studio 2.3 NDK

android studio 2.3 中的是NDK(从Android Studio2.2开始),较之前的版本有了很多改进,至少可以比较简便的正常用了;当然还是有很多不方便;



//YouTube上的配置:

https://www.youtube.com/watch?v=1Da8FTLEBlQ


官方网站的两篇文章:

https://developer.android.com/ndk/guides/cmake.html
https://developer.android.com/studio/projects/add-native-code.html

转两篇相关的文章:

《Cmake 实践》PDF教程,关于cmake的一篇比较简单,但是足够用的cmake教程非常好!

http://sewm.pku.edu.cn/src/paradise/reference/CMake%20Practice.pdf

一篇简单的cmake和NDK的文章

http://blog.csdn.net/xiaoyu_93/article/details/53082088

官方网站关于cmake和NDK的一些应用介绍

https://developer.android.google.cn/studio/projects/add-native-code.html?hl=zh-cn#new-project

关于cmake应用比较详细的一片文章

http://www.jianshu.com/p/4eefb16d83e3

{从上面的文章特别写出来

7、拓展之使用第三方so库

在一些情况下,我们没有能力开发so库,当别人抛一个库过来的时候我们直接使用就好了。

首先,我们告诉脚本我们只需要导入so库,不需要构建操作。

add_library( imported-lib
             SHARED
             IMPORTED )
  • IMPORTED
    表示只需要导入,不需要构建so库。

接着,我们要设置so库的路径了

set_target_properties(target1 target2 ...
                      PROPERTIES prop1 value1
                      prop2 value2 ...)

举例:

set_target_properties(
                      imported-lib // so库的名称
                      PROPERTIES IMPORTED_LOCATION // import so库
                      libs/libimported-lib.so // so库路径
)

当使用已经存在so库时,不应该配置target_link_libraries()方法,因为只有在build 库文件时才能进行link操作。

也就是说,如果在项目中建立了多个文件生产so库,则可以用 target_link_libraries;

如果用x264等第三方库,但是这里没有cmake编译链接,就需要用上述方法了;

}



这里有几个需要注意的地方:

在Windows7 x64系统上:

之前:我用的是Android Studio zip版本(解压后用里面的32位Androidstudio),加压后,系统上的JDK,SDK ,NDK,QT,VisualStudio等相关的软件工具全部都是32位的,可以正常应用;


 问题:现在在win7 64 系统上创建Android Studio2.3的NDK(include C++)后总是编译错误;


解决方法:

1:获取最新的Android Studio2.3 64位zip版本(Windows(64-bit),目前最新版本,解压后依然是有 32位和64位Android Studio);

     https://developer.android.com/studio/index.html

2:获取NDK 64位版本:android-ndk-r13b-windows-x86_64.zip;

      https://developer.android.com/ndk/downloads/index.html


3:启动解压后Android Studio 64.exe;


4:设置:Settings -》 Appearance & Behavior > System Settings  > Android SDK -》SDK Tools 勾选CMake 和LLDB,然后点击OK获取;


5:设置:Project Structure -》 SDK Location 设置最新的NDK 64位路径;


6:其它相关的,如JDK依然是32位的;现在编译OK了;

      因为还要配合Qt, Visual Studio等这些环境,我在我的win7 64位系统上安装的依旧是32位软件,所以这些软件可以继续用32位的NDK(在软件中设置相关路径);

     最好方法就是在64位系统上全部安装64位软件。











建立Android studioC++工程;

方法一:一般建立工程的时候可以直接勾选C++,然后下一步直到完成就可以了;

方法二:如果工程已经建立了,但是没有一开始勾选C++;那么可以将NDK工程或者Cmake工程放到已经建立的Android工程目录中,然后通过菜单可以添加到工程中;

你可能感兴趣的:(Android)