Android Studio 开发 NDK 的两种方式选择

2016-06-23 16:29:28 +08:00
 gnaix

Android Studio 在很早就支持 NDK 开发了,但是一直没有正式版本的 gradle 支持。
现在官方最新的experimental版本应该到了0.7.0-alpha4

但是experimental版本各种不方便啊,之前也写过一篇教程NDK 开发 - Android Studio 环境搭建

后来发现另外一种方式:在项目下建一个 jni 目录用配置好Android.mkApplication.mk,写好C/C++文件。最后用脚本编译生成并复制到相应的目录下,当然也可以用 gradle 的 task ,一次编译。
第二种方式优点是可以不用修改build.gradle文件了。缺点可能是编译调试优点麻烦。

所以开发 NDK 的大神们 你们是用哪种方式开发的。或者有更好的开发方式。(先不考虑 eclipse )

9500 次点击
所在节点    Android
13 条回复
ju5t4fun
2016-06-23 18:37:31 +08:00
现在 Android Studio 2.2 Preview 可以使用 gradle 稳定版+Android.mk 开发 ndk , http://tools.android.com/tech-docs/external-c-builds
youxiachai
2016-06-23 18:39:57 +08:00
lz..你的资料有多久没 update 了....现在 as 都支持 c++ debug 了..
youxiachai
2016-06-23 18:40:26 +08:00
详见今年 google io android studio 的视频...
sampeng
2016-06-23 18:41:11 +08:00
瞄了个咪的。。。我刚升级到 2.2.。。我原来的 ndk 开发项目就打不开了。。。我用的 experimental 。。。挺方便的啊。。断点啥的也都有。。。
youxiachai
2016-06-23 18:42:23 +08:00
sampeng
2016-06-23 18:43:46 +08:00
不是经常升级的原因是, android studio 常年患有 gradle 不兼容的毛病。偏偏 gradle 下载又慢的死人。所以我是能不更新不更新。。。拖了好久一更新,果然各种 gradle 版本不兼容。。
icylogic
2016-06-23 19:02:58 +08:00
acros
2016-06-23 19:06:54 +08:00
@sampeng android 开发最气人的就是各种环境搭建,这个 Gradle 版本多如牛毛竟然还要一个个挑过去···
sampeng
2016-06-23 20:09:15 +08:00
@acros 这也是影响 android studio 推广的一大原因。。。
我跟很多人安利,不接受的原因也在这。。一更新环境就不能用。。。人都是懒的
Lonely
2016-06-23 20:24:09 +08:00
@sampeng 用了这么久的 AS 还没碰到过 gradle 不兼容的问题。你举个栗子呢?至于 gradle 下载慢,你不会挂代理吗? Xcode 也经常更新后会有一堆问题。
ilotuo
2016-06-23 20:33:32 +08:00
experimental 不支持符号表和函数跳转等.官方也说了
我还在坚持使用 1.5 + Android.mk 调试全靠打印 发现其实也不是那么依赖断点
allenx
2016-06-24 09:37:30 +08:00
用第 2 种,一般是先在其他平台调试 OK 了之后放到 android NDK 下面去。
liufuyi
2016-06-26 08:37:48 +08:00
第二种的方法的缺陷 就是调试起来 麻烦

我这边是 历史遗留问题外加导入了几个静态库,也是用得第二种

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/287834

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX