0如何用纯Cndk开发安卓应用.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
0如何用纯Cndk开发安卓应用

如何用 纯C++(ndk)开发安卓应用 ?2014-06-04 13:19 佚名 OpenG 字号:T | T如何安装安卓的开发环境以及怎么设置ndk的环境变量等在前边的文章已经有了详细的讲解,在这里我就不再说明,如果有不会安装和设置环境的,请先参考安卓环境搭建的内容。AD: WOT2014课程推荐:实战MSA:用开源软件搭建微服务系统51CTO主办WOT全球软件技术峰会直减百元优惠活动 抢票进行中!如何安装安卓的开发环境以及怎么设置ndk的环境变量等在前边的文章已经有了详细的讲解,在这里我就不再说明,如果有不会安装和设置环境的,请先参考安卓环境搭建的内容。好,假设以及安装好了ndk,使用纯c++开发安卓程序,下边是详细的步骤与说明:1.编写入口函数android_main为入口函数,和C++中的main函数是一样的。这里创建CELLAndroidApp的对象,直接调用main函数。void?android_main(struct?android_app*?state) ?{ ?????CELLAndroidApp????app(state); ?????????app.main(0,0); ?} ?说明:其中的?CELLAndroidApp是我们设计的一个图形绘制类,稍后将对其做详细说明2.绘制类的实现说明2.1类的成员说明protected: ?????EGLConfig????????_config; ?????EGLSurface???????_surface; ?????EGLContext???????_context; ?????EGLDisplay???????_display; ?????android_app*?????_app; ?????int??????????????_width; ?????int??????????????_height;?部分参数说明:_surface:用于绘制图形,相当于windows绘图中的位图_context:可以看做是opengl对象_display:用于绘图的设备上下文,类似于windows绘图中的dc2.2 构造函数说明CELLAndroidApp(android_app*?app):_app(app) ?????{ ?????????_surface????=????0; ?????????_context????=????0;? ?????????_display????=????0; ?????????_width????????=????64; ?????????_height????????=????48; ?????????app-userData????????=????this;?//用户数据?????????app-onAppCmd?????????=?????handle_cmd;?//窗口的创建销毁等?????????app-onInputEvent?????=????handle_input;?//回调函数?????}?值得注意的是,这里的app中的userData,传入用户数据,这里直接传入this,onAppCmd传入的handle_cmd回调函数,onInputEvent传入的事handle_input回调函数2.3 类中函数main()说明virtual????void?????main(int?argc,char**?argv) ?????{ ?????????int?ident; ?????????int????events; ?????????android_poll_source*?source; ??????????while?(true) ?????????{???????? ?????????????while?((ident?=?ALooper_pollAll(0,?NULL,?events,?(void**)source))?=?0)? ?????????????{ ?????????????????if?(source?!=?NULL) ?????????????????????source-process(_app,?source);?//有触摸事件,调用input函数,相当于dispatchmessage??????????????????if?(_app-destroyRequested?!=?0) ?????????????????????return; ?????????????} ?????????????render(); ?????????} ?????}?其中的android_poll_source相当于windows中的消息队列,用于存放消息,这个函数中模拟了windows中的消息机制。ALoo

文档评论(0)

yd327298 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档