1、c9 APICloud移动开发实战广受欢迎的移动App开发平台技术解析配套免费视频讲解课程前沿行业开发实例分享田中国工信出版集团多人民邮电出版社仅供非商业用途或交流学习使用AP I Cloud云端一体平台的技术架相设计者及核心引擎的实现者,对大规模、高并发的云端服务开发有着丰富的经验。优秀的JavaScript全错工程师,有十多年浏览器引擎及移动应用引擎开发经验,先后参与过国内外多款浏览器引擎、JavaScipt引擎和移动应用引擎的开发工作。同时也是混合模式开发技术的倡导者,是国内较旱一批将Web与Native技术融合的实践者。一直从事浏览器、JavaScipt引擎及相关中间件技术的工作,参与
2、过多个基于浏览器的移动中间件引擎的开发工作。精通Android操作系统,育丰富的App架相及开发经验。热爱新技术,熟悉HTML5和W3C规范,对HTML5和浏览器技术的实际应用有深入研究并付诸过大量实践。仅供非商业用途或交流学习使用发们战明MUH陈阿从知A动移AU O 广UDE A a 邹达李德兴。著人民邮电出版社北京仅供非商业用途或交流学习使用图书在版编目(C I P)数据30天App开发从0到1:APICloud移动开发实战邹达,李德兴若北京:人民邮电出版社,2018.6ISBN 978-7一115-4827 3一0I.3II.邹李III.移动终端一应用程序一程序设计凹TN929.53中国
3、版本图书馆CIP数据核字(2018)第075994号内容提要本书围绕APICloud平台,全面、系统、细致地讲述了App开发的相关内容,涉及平台工作原理、内部实现机制和应用开发技巧。本书涵盖了APIC!oud应用开发的必备知识,包括基础知识、关键技术、开发技巧和行业方案,并从实践角度出发,通过大量的实例代码、详细的操作步骤和丰富的开发截图,帮助开发者迅速掌握APICloud应用开发,有能力制作出好的App。本书是APIC!oud开发者的最佳入门指南,并配有免费的讲解视频,适合各种层次的APICloud学习者和开发者阅读。著邹达李德兴责任编辑杨大可责任印制马振武人民邮电出版社出版发行北京市丰台区
4、成寿寺路ll号邮编100164 电子IUfH牛3 I 网址http:/w川大厂聚鑫印刷有限责任公司印刷开本:80010001/16 J:20.25 字数:431千字印数:l4000册201 B年6月第l版201 8年6月河北第l次印刷定价:69.00元读者服务热线:(010)81055410印装质量热线:(010)81055316 反盗版热线:(010)81055315 广告经营许可证:京东工商广登字20170147号仅供非商业用途或交流学习使用对本书赞誉一项技术价值的高低在于其能帮助客户弥补多大的技术差距。移动App已逐渐成为企业业务的基础设施,但移动开发人员的稀缺,导致大量的企业无法组建自
5、身的研发队伍。雪上加霜的是,移动App距离客户更近了,还需要更快速地迭代。AP!Cloud正是为弥补这个缺口而诞生的。尽管AP!Cloud采用HT扣lL5和JavaScript技术降低了开发难度,但仍需要开发者慢匮摸索。本书的出版解决了困扰开发者的问题,进一步弥补了传统企业与优秀互联网公司之间的技术差距。一一林路,北极光创投合伙人本书是程序员写给程序员的,其中充满了程序员的风格一一平实、纯粹,还有理性的乐观。我与本书的作者从各自创业开始,就持有一个共同的理念App开发平台(乃至操作系统)应该高效、开放、跨平台、功能丰富。本书是这理念最为具体的说明,而APIC!oud和中科创达这两家公司,也是该
6、理念的见证者。我会将本书推荐给我的同事、朋友、合作伙伴和客户阅读。事实上,我已经在这么做了。一邹鹏程,中科创达CTO和APTCloud的小伙伴们相识好几年了,一直在用他们的平台做各种智能硬件相关的App,也和他们一起举办过面向开发者的社区活动。APTC!oudCEO刘鑫在用户体验和服务上对细节的无限追求,APIC!oudCTO邹达在技术上精灌的造诣,让大家用上了一款优秀的产品。早就觉得他们应该出一本书了,所以这次收到样书一点也不意外,更是几乎一气呵成地读完,感觉这本书应该叫“30天App开发从0到100气本书的内容丰富翔实,包含了App的规划、开发、调试、性能优化、上架等方方面面,还有数个不同
7、行业的应用范例。无论是App开发的新手,还是“老鸟”,本书都会给你带来全新的知识和视角。在智能设备端,跨平台App已经成为一个不可逆的趋势,而APIC!oud则是我们的首选一一文IJI炎,机智云CTO仅供非商业用途或交流学习使用2 对本书赞誉这是一本面向初学者但同时又会让有经验的开发者快速晋级的书。我在大学里接触最多的就是新入学的“初级码农”,通过本书可以让他们迅速成长为可以交付App产品的开发者。这种学习体验,对他们重新理解开发的含义以及建立对IT学习的自信心都有极大帮助。另外,以App实现为导向的面向APT的编程方法也是我个人非常推崇的一种开发趋势。一一梁震鲁,齐鲁工业大学网络信息中心副主
8、任,国家高级职业指导师,APIC!oud社区优秀讲师我一向认为一本计算机类图书的作者,如果能够务实地站在App设计者的角度去思考问题,深入理解问题之间的相互关系,并且会针对程序员经常遇到的关键知识做通俗易懂的阐述和丰富的实例验证,那么他给读者带来的不仅是知识,还有良好的程序员思维。希望本书的读者能够从中领会作者的良苦用心。一一孙增斌,英特尔在线业务平台总监本书是一本很好的开发入门教程,通俗易懂、由情入深,并提供了丰富的实际案例,详细介绍了如何使用前端开发语言和丰富的APIC!oud平台扩展模块来跨平台开发移动App。相信每位读者都能从本书中汲取相应的知识,它也将帮助我们的开发团队更好地开发移动
9、App!一一丁美玲,泛亚汽车技术中心高级主任工程师APIC!oud平台以独有的快速App开发方式,将移动开发中的软件复用提升到一个新的高度,可以帮助企业在短期内打造出满足业务需求的App,这一点我在实际使用中有切身的体会。本书语言平实流畅、实例内容丰富,是对APIC!oud生态的又一巨大贡献,也是我们移动开发人员的福音。读读本书,相信你一定会喜欢的!一一文IJ殿兴博士,中信证券信息技术中心高级副总裁移动互联改变了人们的生活,更给企业带来经营模式的转变革日新的商机。在这一过程中移动App发挥了重要的作用。但是,对一般的非IT企业而言,高效建立App并不断地更新、维持运行,会使企业担负很高的成本。
10、直到有一天,我偶然发现APTCloud,它让我非常欣喜。APIC!oud是中国领先的“云端一体”移动应用云服务开发平台,能够满足移动创新者和传统企业移动化这两个市场的App开发需求,并可以为开发者提供高效A叩开发和平台管理的一站式服务,包括开发、APT集成、测试、渠道打包、运营管理的App全生命周期等。它已有数以万计的成熟开发接口、多个行业的应用模板以及一些优秀开发者提供的快捷功能组件。APTCloud 已经服务于很多行业的企业客户,并为客户带来省心、安心的App定制开发服务。如果你还在为企业的A叩开发而烦恼,那就试试APIC!oud吧,一定会让你取得事半功倍的效果。一一周伊丽,光大银行电子银
11、行部副总经理仅供非商业用途或交流学习使用对本书赞誉3 APIC!oud平台是目前开发App最高效的平台之一,本书详尽地讲述了如何通过API Cloud 平台快速开发一款优质的App,里面有大量的图文案例并配合实战讲解,通俗易懂,容易上手,非常适合初学者学习。一一朱亮,春秋航空运营总监作为最早一批APIC!oud的使用者,还记得当初相识的关键字“30天从0到1”,这句话并没有吹牛,我们用APJC!oud很快就完成了“战旗”的开发,并且经受住了百万日活用户的挑战。我已经好久不写代码了,翻阅本书发现许多当初期望的功能都被逐一实现,只能感慨现在的APIC!oud用户太幸福了。请记住,当你有想法时,一定
12、要用APlCloud启航。一一潘长煌,全民直播CEO仅供非商业用途或交流学习使用序可能很多人不知道,规模大的企业和IT预算多的企业的移动App大部分都是基于棍合模式开发实现的。很多做App开发的技术人员会存在一种偏见,觉得“采用混合模式,基于HTML5技术开发出来的App,体验以及功能会和原生模式开发的存在差距所以更愿意使用原生模式开发App。其实市场上主流的App,绝大部分是基于混合模式开发的。最典型的就是微信,除了聊天功能以外,包括公众号、小程序等都是由混合模式开发技术实现的。再比如电商领域的淘宝、京东等,旅游领域的携程,教育领域的VipKid,信息分类的58等不同应用范围的App,混合模
13、式开发技术使其商品展示及线上市场活动的运营管理都变得非常灵活。此外,在航空、保险、银行等行业中,无论是服务客户的toe模式App,还是对员工进行管理的toE和toB的App,多是使用混合模式开发的,混合模式开发技术成为了绝对主力。人们不禁要问“为什么这些公司和企事业单位,有着足够的预算和开发资源,还要选择?昆合模式App开发技术作为企业互联网化的支撑?”答案其实和企业的互联网化及数字化的需求有着直接的联系。以下4个方面,决定了越有实力的企业越需要混合模式A叩开发技术;同时,也是混合模式A叩开发技术形成不同行业解决方案的根本优势和企业选择的必要性所在。速度的要求“试错”这个词不但在互联网公司中广
14、为流传,在传统公司的互联网化过程中也被广泛接受。越来越多的CIO在谈各自企业移动战略的时候,都会提到“能否根据业务部门的一个想法,先在一周之内做个原型,快速实现,拿出去让大家看看,然后基于这个原型再修改”。这种快速.4 仅供非商业用途或交流学习使用仅供非商业用途或交流学习使用序2发起、快速验证、快速调整的方法,已经非常流行。之所以要在短时间内先把业务从想法落到现实,哪怕App粗糙些,也要先实现出来,原因在于具有鲜明企业个性的业务的创新想法可能没有先例可循,很难考虑得特别完整。与其花费三五个月不停地思考业务需求,还不如用一两个星期先把基础的想法落实。哪怕短时间内做出的App并不能真正满足业务的需
15、要,但是可以让业务人员的想法在这个过程中变得有据可依、有的放矢,从而为实现更完整且更切实可行的业务方案先行探索。“业务部门的一个想法,TT部门一两周就做出来了!”这对于企业的信息化负责人而言,是很重要的褒奖。这种对速度的要求,恰恰是混合模式开发技术最明显的特长和优势,一套代码可同步生成iOS与Android两个平台的App,甚至还能部分兼容微信公众号和小程序。一套代码,并不代表偷懒或工程技术的简化,而更多的是因其不仅节省了代码编写的时间,还避免了多个技术团队之间跨知识结构的协同问题,不再需要iOS与Android工程师们开会讨论差异性问题,更是大幅节省了App与服务器端联机调试的时间戚本。但如
16、果同样的功能,同样从零开始,使用传统的原生开发技术基本没有办法在一两个星期内完成有价值业务需求的实现,因为这个时间可能连不同终端碎片化和差异化的问题都不足以解决。所以,CIO为了满足业务发展的需求和数字化速度的要求,在移动战略中往往都会规划使用跨平台的混合模式A叩开发技术。业务灵活性的要求在PC时代的BIS架构中,想要实现IT系统的更新并不需要过多地考虑用户端的影响。因为作为用户入口的浏览器一直处于访问网络的状态,只要网络连通,用户随时访问网站都会获得最新的功能和业务。对用户而言,并不真正地存在版本的概念。只要访问服务器,服务器的任何更新都可以随时展示到用户界面上,出现使用问题时,往往只需要清空一次浏览器Cookie基本就可以解决。但是在移动时代,用户对版本的概念变得越发敏感。而对App的版本管理也成了CIO头痛的问题。通常因为软件开发商能力的制约,或者一些无法避免的bug,让一些已发布的App变得难用甚至会崩溃。此外,一些临时的市场活动、很少但重要的功能、一些不在规划内的产品需求调整等情况,都会直接引出同一个问题“用户必须更新一个版本,重新下载安装,才能满足上述需求”。这种看似日常的