当前位置:首页 > 嵌入式培训 > 嵌入式学习 > 讲师博文 > 嵌入式Android的十大驱动程序

嵌入式Android的十大驱动程序 时间:2020-06-02      来源:原创

为什么产品经理和首席技术主管转向这个炙手可热的平台?为什么Android可以满足医疗设备,机顶盒和汽车信息娱乐系统等各种需求的有吸引力的技术?至少有10个充分的理由,其中有5个是业务驱动因素和5个技术驱动因素。

业务驱动因素

业务需求,尤其是在开放源代码许可下可用的技术的情况下,对于技术经理和企业高管而言都是极具吸引力的。该列表并非旨在反映所有Android驱动程序,而是肯定会选择嵌入式Android的一些令人信服的理由。

1.许可:使用开源技术进行嵌入式系统开发需要开发人员/销售者了解嵌入式软件组件的许可证。Android非常吸引人,因为所有核心程序包均根据Apache 2.0许可的条款开放源代码,从而允许将源代码用于商业和免费开放源代码应用程序。如果您的团队创建了源代码的修改版本,则可能不必按照原始许可条款进行许可。

2.源代码:Android提供了由Android团队专门创建的一整套全面的源代码,可以利用现有的开源项目来提供完整且具有凝聚力的软件堆栈。当前,公共Android系统信息库中有200多个单独的Git树。不仅有核心软件包的源代码,而且许多硬件组件供应商都决定提供特定驱动程序的源代码。该资源还由充满活力的社区积极管理。显然,这对于希望针对特定目标优化这些组件的任何人都是有益的。

许多现有的嵌入式Linux开发团队也会发现外部软件包,例如BlueZ,D-Bus,OpenSSL和Webkit,它们非常熟悉,因为它们被其他开源发行版所使用。如果您是Android的新手,这可以减少团队的学习曲线,并有助于缩短开发时间。

3.发布节奏:Android对主要版本的发布节奏相对较高。它在移动世界中的传承要求更快的发布周期,现在每年多次发布非常普遍。尽管Android似乎每两年发布一次,但这种创新速度显然可以使Android采用者受益。随着新功能支持的添加非常频繁,构建项目时,您自己构建的功能可能会更少,而从中选择的选项更多。

4.生态系统支持:虽然ARM体系结构是大多数早期Android产品努力的重点,但实际上,所有主要的嵌入式芯片提供商都已创建并积极维护Android基本端口。这些硬件提供商正在帮助您加快产品上市时间,并开放其架构供您利用。

从扩展和优化的角度来看,还有一个与Android相关的大型开发者社区,它不仅驱动应用程序层内容(可用的应用程序超过40,000),而且还驱动Android中间件组件。这对于Android的持续发展至关重要。

5.文档和培训:工程团队精通Android所花费的时间并非免费。清晰,简洁,最新的文档对于使您的团队变得至关重要。Android社区提供了各种各样的说明内容,视频(一些是用户创建的,一些是来自商业供应商的),大量的博客以及提供Android学院,最佳实践和教程的独立公司。技术驱动因素

这并不是一个详尽的清单,但确实列举了促使传统嵌入式开发人员使用Android的基于工程的顶级原因。它突出显示了首席技术官以及工程和产品管理副总裁用来为Android做出决策的主要决策点。

6. Android Java和Dalvik虚拟机:与软件堆栈的上层和中间层关联的编程语言是嵌入式系统堆栈技术评估的决策标准之一。Java是一种通用的编程语言,拥有大量训练有素的工程师,您可以从中使用该程序来完成项目;Android基于Java编程语言,尽管它使用自己的虚拟机Dalvik。尽管您的工程团队将不得不投入精力来理解Android Java库和类及其字节代码结构,但是它与Java足够相似,因此任何Java程序员都可以选择并快速开始使用它。

7.硬件参考平台:Android普及的一个结果是,用于原型设计和基准测试的硬件平台的广泛可用性。Android硬件参考平台的主要选项是基于ARM的Android开发电话(使用Qualcomm芯片),对于基准测试特定库或Android Compliance Test Suite的性能仍然有用;其他基于硬件的参考平台,例如德州仪器(TI)的Zoom和Beagleboard参考系统;以及用于嵌入式Android系统设计的新型近似外形尺寸的开发设备,例如针对片上系统(SoC)或板的基于平板电脑,汽车和机顶盒的计划。

8.技术框架:Android提供了新的,正在开发的技术框架,以使可能不被认为是传统智能手机的设备成为可能。例如,某些设备需要比传统智能手机更大的屏幕,甚至需要多个屏幕。Google及其合作伙伴社区都在投资于满足特定应用程序需求的框架。并非所有这些实现都是“标准Android”代码,但是通过合作伙伴社区,嵌入式开发人员正在使用Android完成工作。

9. NDK支持:NDK或本机开发套件是一个工具集,用于在Android应用程序中嵌入使用本机C / C ++代码的组件。某些类型的应用程序具有用例和性能要求,可能超出基于Java / VM的应用程序开发模型的能力。为了减轻这些限制,NDK支持被添加到标准的Android软件开发工具包中,从而开辟了一种新的方式来创建性能和图形敏感的应用程序。对于某些开发人员来说,这可能是一个巨大的好处,但并不是解决所有性能挑战的灵丹妙药。

10.开发和调试工具:使用开源开发环境和调试工具可以使现有的工程部门迅速切换到Android开发,尤其是如果以前的经验是在另一个基于Linux的嵌入式开发环境中的话。Eclipse提供了一个专用于Android的插件,即Android开发工具(ADT)插件。使用此插件,您可以设置新的Android项目,创建特定于应用程序的用户体验和用户界面,添加组件,调试,然后导出.apks。从调试的角度来看,Linux开发人员将很容易采用Android,因为GDB(GNU调试器)是调试Android代码的常用方法。假设硬件支持,基于JTAG的调试在内核和用户空间以及引导加载程序中也很流行。

Android作为智能手机和嵌入式设备的基础平台,正迅速普及。Android的关键业务和技术驱动力非常引人注目,导致许多开发团队都参与了Android,从最初的调查到完整的产品开发。Android最终能否被市场接受,将取决于团队能够利用这些驱动程序以多快的速度克服其平台的新问题。

上一篇:带有开源软件的嵌入式系统的设计

下一篇:测试基于MEMS的嵌入式设计的硬件故障

热点文章推荐
华清学员就业榜单
高薪学员经验分享
热点新闻推荐
前台专线:010-82525158 企业培训洽谈专线:010-82525379 院校合作洽谈专线:010-82525379 Copyright © 2004-2020 北京华清远见科技发展有限公司 版权所有 ,京ICP备16055225号京公海网安备11010802025203号

回到顶部