下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】AndroidStudio怎样Debug对应so文件CC++代码
这篇文章将为大家详细讲解有关AndroidStudio怎样Debug对应so文件C/C++代码,在下觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在C/C++跨平台开发中,我们知道在Windows上可以通过VS,进行单步断点调试,这非常方便。但是我们如果编译好的动态库so,想要跟踪下其流程及各个阶段,如,怎么跟踪FFmpeg/VLC等库内部demux流程,或是Codec流程呢?今天通过一个小Demo进行Debug库文件C/C++代码。一,下载NDK和构建工具要编译和调试本地代码(nativecode),你需要下面的组件:1、TheAndroidNativeDevelopmentKit(NDK):让你能在Android上面使用C和C++代码的工具集。2、CMake外部构建工具。如果你准备只使用ndk-build的话,可以不使用它。3、LLDB:AndroidStudio上面调试本地代码的工匠。注意:要在AndroidStudio中使用CMake或者ndk-build,你需要使用AndroidStudio2.2或更高的版本,同时需要配合使用AndroidPluginforGradle2.2.0及以上的版本。安装上述组件:如SDKTools不显示LLDB,CMake和NDK,说明你配置了国内镜像站点!要能上google官网才会显示,之前也是通过国内镜像,一直没显示出来!Tools>Android>SDKManager>点击SDKTools选项卡。勾选LLDB,CMake和NDK。已单独下载了android-ndk-r11b所这里不再下载NDK!(最好勾选下载最新NDK)点击Apply,然后点击OK。二,新建项目:1、勾上includeC++support2、在最后一步时可选择不同的C++库说明:虽说是支持C/C++,但是不完全支持C/C++的全部特性,必须得按照jni的约定来:具体可以参照jni手册C++Standard:选择C++库ToolchainDefault:默认CMake设置C++11:支持C++11特性!ExceptionsSupport(-fexceptions):如果你想使用有关C++异常处理的支持,就勾选它。勾选之后,AndroidStudio会在module层的build.gradle文件中的cppFlags中添加-fexcetions标志。RuntimeTypeInformationSupport(-frtti):如果你想支持RTTI,那么就勾选它。勾选之后,AndroidStudio会在module层的build.gradle文件中的cppFlags中添加-frtti标志。说明:native-lib.cpp:自动生成的C++源文件CMakeLists.txt:CMake脚本根据构建脚本的指令去编译一个C++源文件,也就是native-lib.cpp,并将编译后的产物扔进共享对象库中,并将其命名为libnative-lib.so,然后Gradle将其打包到APK中。ExternalBuildFiles存放CMake或ndk-build构建脚本的地方。有点类似于build.gradle文件告诉Gradle如何编译你的APP一样,CMake和ndk-build也需要一个脚本来告知如何编译你的nativelibrary。1、只需配置android标签节点下的buildTypesbuildTypes{
debug{
jniDebuggable
true
jniDebuggable
=
true
}
}2、配置AndroidManifest属性:android:debuggable="true"<application
android:label="@string/app_name"
android:debuggable="true">
<activity
android:name=".HelloJni"
android:label="@string/app_name">
<intent-filter>
<action
android:name="ent.action.MAIN"
/>
<category
android:name="ent.category.LAUNCHER"
/>
</intent-filter>
</activity>
</application>3、配置Run/Debugconfigurationsa、选择run下拉item,选EditConfigurations,弹出配置窗体b、点击➕新建configuraionts,选androidnative条目c、配置下native执行的名称如:hellojniNative.d、选择真机或模拟器调试.断点调试运行图1,图2是两种进行运行app-native的方式,选择app-native后,debug->app-native;接下来就可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 一次环保志愿者活动的心得周记7篇范文
- 未来世界我想象想象作文6篇范文
- 昆山安全员c证题库及答案解析
- 并购基金从业考试及答案解析
- 2025年舰船攀爬理论题库及答案
- 2025年石油化工行业环保减排技术创新报告
- 水泥安全考试题库及答案解析
- 2025年体育行业体育产业全球化发展与体育文化传播研究报告及未来发展趋势预测
- 2025年生态农业行业可持续发展模式研究报告及未来发展趋势预测
- 健康评估绪论试题及答案
- 浙江德斯泰新材料股份有限公司年产40000吨 PVB 功能膜项目环境影响登记表
- 初中地理学科核心素养培训讲座
- 数学职业生涯规划课件
- T/CADCC 003-2024汽车漆面保护膜施工技术规程
- 检测公司员工合同范本
- 基于学科核心素养的初中生物学作业设计与实施策略研究
- 2025年上饶经开区招才引资集团有限公司招聘笔试参考题库附带答案详解
- 村级组织2025年换届准备工作方案
- 传染病报告及处理规范服务培训
- 《高等数学基础》课件-第四章 导数的应用(含课程思政元素)
- 2025-2030石材加工机械行业市场现状供需分析及投资评估规划分析研究报告
评论
0/150
提交评论