Android NDK学习系列——第一篇(持续更新)
NDK学习系列--第一篇
简介:
这是作者本人学习ndk开发的一个文章系列,因为本人Android开发出身,最近需要提升音视频开发能力,而音视频必须使用到ndk,所以记录一下学习的要点,在简书上分享给一起学习的朋友们。希望能对大家有所帮助。本人水平有限,如果有错误的地方,还请大家海涵,帮我指点一二。
NDK介绍
(英语:native development kit,简称NDK)是一种基于原生程序接口的软件开发工具。通过此工具开发的程序直接以本地语言运行,而非虚拟机。因此只有java等基于虚拟机运行的语言的程序才会有原生开发工具包。[维基百科]
NDK是一系列工具的集合
NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。这些工具对开发者的帮助是巨大的.
NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。
NDK可以自动地将so和Java应用一起打包,极大地减轻了开发人员的打包工作。
为什么要NDK开发
NDK开发具有以下优点:
1. 项目需要调用底层的一些C/C++的一些东西(java无法直接访问到操作系统底层(如系统硬件等)),或者已经在C/C++环境下实现了功能代码(大部分现存的开源库都是用C/C++代码编写的。),直接使用即可。NDK开发常用于驱动开发、无线热点共享、数学运算、实时渲染的游戏、音视频处理、文件压缩、人脸识别、图片处理等。
2. 为了效率更加高效些。将要求高性能的应用逻辑使用C/C++开发,从而提高应用程序的执行效率。但是C/C++代码虽然是高效的,在java与C/C++相互调用时却增大了开销;
3. 基于安全性的考虑。防止代码被反编译,为了安全起见,使用C/C++语言来编写重要的部分以增大系统的安全性,最后生成so库(用过第三方库的应该都不陌生)便于给人提供方便。(任何有效的代码混淆对于会smail语法反编译你apk是分分钟的事,即使你加壳也不能幸免高手的攻击)
4. 便于移植。用C/C++写得库可以方便在其他的嵌入式平台上再次使用。
开发HelloWorld
开发环境:Android Studio4.0 gradle版本5.4.1
第一步:new project,选择下图中native c++,点击Next
第二步:点击finish即可创建项目,创建后的项目等编译成功即可运行。运行后可以看到Hello World!。恭喜你,迈出了ndk的第一步,只要坚持下去,升职加薪,迎娶白富美就在明天。
第一篇结语
俗话说万事开头难,但是ndk的第一个项目跑起来还是很简单的呀,既然不难那就继续坚持学习吧!下一篇开始分析Android ndk项目的结构。敬请期待!
15大半导体厂排名!三星甩英特尔再夺冠,台积电被“存储器”超车
国际市调机构 IC Insights 针对 2018 年全球半导体厂排名出炉,三星电子(Samsung Electronics)连续两年终结英特尔的龙头之路,今年再度以 832.58 亿美元远远超越英特尔的 701.54 亿美元。然意外的是,晶圆代工龙头台积电竟然输给“存储器”,把全球老三的位置拱手让给韩系大厂 SK 海力士(SK Hynix)!
图|国际市调机构 IC Insights 针对 2018 年全球半导体厂排名(来源:Ic insights)
综观 2018 年全球前 15 大半导体供应商,年营收业绩至少要达 80 亿美元的门槛,才有资格入榜。根据 IC Insights 调查,前 15 大半导体供应商依序为三星、英特尔、海力士、台积电、美光、博通、高通、东芝、德仪(TI)、 NVIDIA 、意法半导体 ( ST )、西部数据/SanDisk 、恩智浦(NXP)、英飞凌(Infineon)、 SONY。
一向是全球半导体龙头的英特尔,在 2017 年首度败给三星,长达 25 年半导体龙头的霸主地位意外被终结。当时很多业内专家认为这只是昙花一现的现象,三星会超越英特尔纯粹是 DRAM 和 NAND Flash 存储价格上涨的贡献,这是“沙上建塔”,不可能长久的。
然而,三星今年不但再度超越英特尔,连续两年夺冠,领先的距离更近一步扩大。三星 2018 年半导体营收预计将达 832.58 亿美元,年增率 26%,而英特尔年营收预计为 701.54 亿美元,年增率 14%,两者之间的营收差距从 2017 年的 7%,在 2018 年扩大至将近 19%。
图|三星总部(来源:wiki)
2017 年半导体大厂上演前两名宝座洗牌的戏码,2018 年则是出现第三、第四名对调的现象。2018 年第三名的台积电在今年意外被 SK 海力士超越,反应 DRAM 和 NAND Flash 存储芯片太热门。
2018 年 SK 海力士估计年营收将达 377.31 亿美元,年增 41%,进步到全球第三名,超越台积电估计 342.09 亿美元营收,年增率 6%。
IC Insights 也表示,如果排除纯晶圆代工厂,联发科在 2018 年的营收也将排进全球 15 大半导体厂,预估年营收为 79 亿美元,但营收年增率仅 1%。
前 15 大半导体厂中,名次进步最大的是西部数据/ SanDisk,从去年的第十五名进步到第十二名,而营收年增率最高的前三名则是 SK 海力士、NVIDIA、美光,分别成长 41%、37% 和 33%。再者,当中唯一营收负成长的是位居第七名的高通,衰退 3 %。
相关问答
intermsof用法和andbut什么的一样吗?有特殊用法吗?_作业帮[回答]and和but是连词,可以接陈述句intermsof做介词词组,不可以接陈述句
数字1~100的英语单词怎么写?_作业帮[回答]onetwothreefourfivesixseveneightnineteneleventwelvethirteenfourteenfifteensixteensev...
fandom与wikidot实体区别?区别就是两者意思是不一样,具体的不同如下wikidot中文意思是维基点fandom中文意思是n.运动迷;影迷Butfandomdoesmorethandefeatdistance...
"breathmint"如何翻译?呼吸薄荷呼吸薄荷(不是一般的糖果类薄荷,应是用来消除口臭的,用来保持口气清新的)1,小呼吸薄荷(breathmint)装在个小盒子中,无糖,鹿蹄草呼吸薄荷...
英语1-100数字我要1至100的英语数字!_作业帮[回答]1one2two3three4four5five6six7seven8eight9nine10ten11eleven12twelve13thirteen...
【英语翻译blogs andwikis areeasytosetupandadminister.Theya...[最佳回答]blog和wiki很容易建立和管理.它们在收集,存储和搜索信息方面比email要好得多.他们有助于获取,巩固,集中知识,这只需使用简单的Web浏览器就可以做到,...
【asenseofcommunityandengagement是什么意思?bec的考题】作业帮[回答]一种社区服务意识communityandengagement【fromwiki】referstotheprocessbywhichcommunitybenefitorganiz...
求科普美国乐团的乐器都有哪些? 申请方我只了解社团类的,在这里简要介绍一下,受不起“科普”这样的担当咳咳咳乐器主要分为四类:Woodwind,Brass,PercussionandString。可以在维基百科...
有哪些好的国外搜索引擎网站?必应(Bing)是微软的一个搜索引擎网站。以前它也被称为LiveSearch、WindowsLiveSearch和MSNSearch。它是由微软首席执行官史蒂夫·鲍尔默在2009年5月28日揭...
veronika的中文意思是什么?veronika/veronica是这个名字的两个写法。维基百科上解释:Veronicaisafemalegivenname,theLatinformoftheGreekn...