安卓系统Android应用程序开发PPT教材_第10章AndroidNDK开发(5).ppt

安卓系统Android应用程序开发PPT教材_第10章AndroidNDK开发(5).ppt

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
10.3 NDK开发示例 建立Android工程 上面的代码有一个NDK开发的小技巧,在开发C/C++的共享库前,可以使用具有相同和相近功能的Java函数进行替代。在代码第17行本应该调用共享库的add()函数,但为了便于开发和调试,在代码第25行到第27行,使用Java代码开发了一个功能相同的add()函数,这样即使在没有完成C/C++的共享库开发前,也可以对这个Android工程进行界面部分的调试 第16行和第23行注释掉的代码,就是在C/C++的共享库开发完毕后需要使用的代码,其中第16行是动态加载共享库的代码,加载的共享库名称为add-module;第23行用来声明共享库的函数,使用C/C++开发的共享库必须有同名的函数。在共享库开发完毕后,取消第16行和第23行代码的注释,并注释掉第25行到第27行代码,这样程序就可以正常调用共享库内的函数进行加法运算 10.3 NDK开发示例 建立Android.mk文件 建立C/C++源代码文件前,首先需要在sources目录中建立模块目录,AndroidNdkDemo示例的模块目录为add-module,这个模块目录的名称与Application.mk文件中声明的模块名称相同 add-module目录中包含两个文件,Android.mk和add-module.c,目录结构如下 (+)sources (+)add-module (-)Android.mk (-)add-module.c 10.3 NDK开发示例 建立Android.mk文件 Android.mk是为NKD编译系统准备的脚本文件,用来描述模块需要编译C/C++文件的信息 通常NKD编译系统会搜寻$NDK/sources/*/目录中的所有Android.mk文件,但如果程序开发人员将Android.mk文件放置在下一级目录中,则需要在上一级目录中的Android.mk文件添加如下代码 include $(call all-subdir-makefiles) 10.3 NDK开发示例 建立Android.mk文件 下面来分析AndroidNdkDemo示例的add-module模块的Android.mk文件 Android.mk文件的代码如下 LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := add-module LOCAL_SRC_FILES := add-module.c include $(BUILD_SHARED_LIBRARY) http://www.anzhuo.cc/forum-55-1.html 三星N7100 GALAXY Note2论坛 10.3 NDK开发示例 建立Android.mk文件 每个Android.mk文件都必须以第1行代码开始,变量LOCAL_PATH用来定义需要编译的C/C++源代码的位置,my-dir由NKD编译系统提供,表示当前目录的位置。代码第3行的include $(CLEAR_VARS)表示清空所有以LOCAL_开始的变量,例如LOCAL_MODULE、LOCAL_SRC_FILES、LOCAL_STATIC_LIBRARIES等,但第1行定义的LOCAL_PATH不在清空的范围内。因为所有的脚本都将粘贴到同一个GNU Make的执行上下文中,而且所有变量都是全局变量,因此必须在每次使用前清空所有以前用过的变量

您可能关注的文档

文档评论(0)

asd522513656 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档