使用Android Studio进行NDK开发和调试(gradle-experimental的使用)
2016-12-16 15:21
751 查看
在之前的一篇文章有介绍了Android的NDK开发的简单流程,假如这块还没有实践过,建议先去看看这篇文章,把整个流程搞懂,有助于这篇文章的学习Windows环境下Android Studio进行NDK开发
这里我主要讲述如何配置环境,使得我们可以对JNI中的C代码进行调试。关于整体的说明,在下篇文章将会通过翻译官方提供的文档进行阐述
![](http://img.blog.csdn.net/20161216144106053?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjk1MDA5OQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
主要是将classpath替换成com.android.tools.build:gradle-experimental,这是实验性的版本,说明目前还在测试阶段
使用com.android.model.application替代com.android.application
所有的配置需要使用model{}括起来
所有的属性配置使用等号(=)连接
![](http://img.blog.csdn.net/20161216151340617?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjk1MDA5OQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
这是一个C、C++的调试器
![](http://img.blog.csdn.net/20161216151415023?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjk1MDA5OQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
假如上述的lLLDB工具没有下载,则在这个页面的下方会有错误提示,也可以点击fixed,然后会自动跳转到下载页面
![](http://img.blog.csdn.net/20161216151558087?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjk1MDA5OQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![](http://img.blog.csdn.net/20161216151635885?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjk1MDA5OQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
执行
![](http://img.blog.csdn.net/20161216151700775?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjk1MDA5OQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
这里我主要讲述如何配置环境,使得我们可以对JNI中的C代码进行调试。关于整体的说明,在下篇文章将会通过翻译官方提供的文档进行阐述
环境的配置
配置根目录的build.gradle文件
buildscript { repositories { jcenter() } dependencies { // classpath 'com.android.tools.build:gradle:2.0.0' classpath "com.android.tools.build:gradle-experimental:0.7.0-alpha4" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } }
主要是将classpath替换成com.android.tools.build:gradle-experimental,这是实验性的版本,说明目前还在测试阶段
配置主工程的build.gradle文件
apply plugin: 'com.android.model.application' model { android { compileSdkVersion = 23 buildToolsVersion = "23.0.3" defaultConfig { applicationId = "com.example.samsung.ndktest" minSdkVersion.apiLevel = 21 targetSdkVersion.apiLevel = 23 versionCode = 1 versionName = "1.0" } ndk{ moduleName = "JniTest" //生成的so名字 abiFilters.addAll(['armeabi','armeabi-v7a','x86']) } buildTypes { release { minifyEnabled = false proguardFiles.add(file('proguard-android.txt')) } } } }
使用com.android.model.application替代com.android.application
所有的配置需要使用model{}括起来
所有的属性配置使用等号(=)连接
下载LLDB工具
这是一个C、C++的调试器
增加调试选项
假如上述的lLLDB工具没有下载,则在这个页面的下方会有错误提示,也可以点击fixed,然后会自动跳转到下载页面
使用
选择调试模式
执行
在C、C++代码中选择短点执行
总结
至此,NDK开发中针对C、C++的断点调试就可以使用了,下篇文章将通过翻译官方提供的文档,给出更多的建议和方法相关文章推荐
- 使用Android Studio进行NDK开发和调试(gradle-experimental之官方文档的翻译说明)
- 使用Android Studio 进行NDK开发和调试
- 使用Android Studio 进行NDK开发和调试
- 详解如何使用Android Studio 进行NDK开发和调试
- 使用Android Studio 进行NDK开发和调试
- 使用Android Studio进行NDK开发
- Android Studio使用gradle-experimental构建NDK工程(无需Android.mk、Application.mk文件)
- 使用Android Studio 1.3 版本进行NDK开发准备工作
- 使用Android Studio 1.3 版本进行NDK开发 编译运行hello-jni项目及分析
- Android NDK开发之旅(2):Android Studio中使用CMake进行NDK/JNI开发(初级)
- Android开发——Android Studio使用新的Gradle构建工具配置NDK环境
- 使用Android Studio进行NDK开发
- 使用Android Studio 1.3 版本进行NDK开发
- 使用Android Studio 1.3 版本号进行NDK开发
- Android Studio使用JNI和NDK进行开发
- 使用Android studio 2.3.3进行NDK开发
- 使用Android Studio 进行NDK开发和Debug
- 使用Android Studio进行NDK开发
- 基于mac,使用android studio进行ndk开发(1)
- 使用Android Studio 1.3 版本进行NDK开发