可能不少人不知道,规模大的企业和IT预算多的企业的移动App大部分都是基于混合模式开发实现的。前端
不少作App开发的技术人员会存在一种偏见,以为“采用混合模式,基于HTML5技术开发出来的App,体验以及功能会和原生模式开发的存在差距”,因此更愿意使用原生模式开发App。git
其实市场上主流的App,绝大部分是基于混合模式开发的。最典型的就是微信,除了聊天功能之外,包括公众号、小程序等都是由混合模式开发技术实现的。再好比电商领域的淘宝、京东等,旅游领域的携程,教育领域的VipKid,信息分类的58等不一样应用范围的App,混合模式开发技术使其商品展现及线上市场活动的运营管理都变得很是灵活。此外,在航空、保险、银行等行业中,不管是服务客户的toC模式App,仍是对员工进行管理的toE和toB的App,可能是使用混合模式开发的,混合模式开发技术成为了绝对主力。程序员
人们不由要问“为何这些公司和企事业单位,有着足够的预算和开发资源,还要选择混合模式App开发技术做为企业互联网化的支撑?”答案其实和企业的互联网化及数字化的需求有着直接的联系。如下4个方面,决定了越有实力的企业越须要混合模式App开发技术;同时,也是混合模式App开发技术造成不一样行业解决方案的根本优点和企业选择的必要性所在。web
“试错”这个词不但在互联网公司中广为流传,在传统公司的互联网化过程当中也被普遍接受。算法
愈来愈多的CIO在谈各自企业移动战略的时候,都会提到“可否根据业务部门的一个想法,先在一周以内作个原型,快速实现,拿出去让你们看看,而后基于这个原型再修改”。这种快速发起、快速验证、快速调整的方法,已经很是流行。之因此要在短期内先把业务从想法落到现实,哪怕App粗糙些,也要先实现出来,缘由在于具备鲜明企业个性的业务的创新想法可能没有先例可循,很难考虑得特别完整。与其花费三五个月不停地思考业务需求,还不如用一两个星期先把基础的想法落实。哪怕短期内作出的App并不能真正知足业务的须要,可是可让业务人员的想法在这个过程当中变得有据可依、有的放矢,从而为实现更完整且更切实可行的业务方案先行探索。编程
“业务部门的一个想法,IT部门一两周就作出来了!”这对于企业的信息化负责人而言,是很重要的褒奖。这种对速度的要求,偏偏是混合模式开发技术最明显的特长和优点,一套代码可同步生成iOS与Android两个平台的App,甚至还能部分兼容微信公众号和小程序。一套代码,并不表明偷懒或工程技术的简化,而更多的是因其不只节省了代码编写的时间,还避免了多个技术团队之间跨知识结构的协同问题,再也不须要iOS与Android工程师们开会讨论差别性问题,更是大幅节省了App与服务器端联机调试的时间成本。但若是一样的功能,一样从零开始,使用传统的原生开发技术基本没有办法在一两个星期内完成有价值业务需求的实现,由于这个时间可能连不一样终端碎片化和差别化的问题都不足以解决。因此,CIO为了知足业务发展的需求和数字化速度的要求,在移动战略中每每都会规划使用跨平台的混合模式App开发技术。小程序
在PC时代的B/S架构中,想要实现IT系统的更新并不须要过多地考虑用户端的影响。由于做为用户入口的浏览器一直处于访问网络的状态,只要网络连通,用户随时访问网站都会得到最新的功能和业务。对用户而言,并不真正地存在版本的概念。只要访问服务器,服务器的任何更新均可以随时展现到用户界面上,出现使用问题时,每每只须要清空一次浏览器Cookie基本就能够解决。微信小程序
可是在移动时代,用户对版本的概念变得愈加敏感。而对App的版本管理也成了CIO头痛的问题。一般由于软件开发商能力的制约,或者一些没法避免的bug,让一些已发布的App变得难用甚至会崩溃。此外,一些临时的市场活动、不多但重要的功能、一些不在规划内的产品需求调整等状况,都会直接引出同一个问题“用户必须更新一个版本,从新下载安装,才能知足上述需求”。这种看似平常的版本发布和用户更新,偏偏是传统企业信息化过程当中面临的全新问题。api
“可否像传统浏览器那样,用户打开的永远是最新的服务和功能?”不少企业的CIO问出了相同的问题,因而大量的、不合规的软件服务商和IT程序员想出了一个“偷懒”的模式。在App中嵌入一些WebView,将一些功能采用传统网页的模式,访问服务器,动态获取。虽然表面上解决了版本更新的问题,实则产生了大量体验不好的App。浏览器
企业对业务灵活性的要求,本质是但愿像微信小程序同样,能够随时发布一些新的功能,随时动态增改一些功能的入口,让用户任意使用,同时让用户的体验更好。这种对业务灵活性的需求其实须要像小程序同样有强大的混合模式App开发技术来支撑。从而达成“增量更新”“静默更新”“打开得到新功能和新体验”,而不是嵌套WebView,用网页模拟App的方法,以较差的用户体验的代价换取业务灵活的可行性。
固然,目前传统模式开发的App,特别是用Android开发的App也开始部分支持动态更新。这也偏偏说明,业务灵活性是企业互联网化、数字化进程的刚需。只是因为传统技术的制约以及软件开发团队或者服务商能力的限制,真正的原生动态更新始终没有办法大规模进入企业,实现商用。这也让企业对混合模式App开发技术的需求更为迫切,成为每一个CIO的必备选项。
业务部门的互联网化意识是由于互联网的普遍普及被带动起来的。因此,传统的由IT部门主导企业信息化的态势发生了微妙的变化。过去,都是由IT部门发起信息化需求,但如今的IT部门愈来愈像“服务部门”。由于业务团队在不停地发起各类各样“业务+互联网”的信息化需求。这个时候,不少传统企业的IT部门领导,没认识到本身角色的转变,若是还存有拖延、无论不问、大家本身搞不定等相似的想法,就会致使当下不少企业的信息化面临的“各类移动App的完全碎片化”“各个业务部门本身找软件开发商实现各自的需求”等问题。这不但架空了IT部门的信息化主导地位,更麻烦的是,让后续的集中管理变得艰难无比。几十家甚至上百家不一样标准的服务掺杂在企业的核心系统中,甚至有些业务部门为了快速知足本身的需求而脱离了IT部门主导的传统PC核心系统,这些操做都是很是危险的。
IT部门在被业务部门要求知足业务的互联网化需求时,每每发现爱莫能助。IT部门人手有限,实在没办法逐一知足全部业务部门的移动化需求。若是无论,就会产生前面所提到的“技术栈、开发商”碎片化的问题。这个时候,基于混合模式App开发技术的移动应用平台,就很好地解决了这两者之间的矛盾。
定标准,从而实现“集中管理”。若是企业可以制订一套统一的混合模式App开发技术和移动平台标准,各个业务部门就能够独立寻找本身的软件开发商,用各类方法知足本身的移动业务需求。平台的一致性能够带来标准化的统一。这其中包括技术标准化、开发流程标准化、代码管理标准化、项目管理标准化、验收标准化、管理和运营标准化等。
既要放,也要抓。这就是互联网时代企业信息化的要求,更是IT部门的职责。混合模式App开发技术,有望成为实现企业移动战略的利器之一。
企业互联网化带来的最根本转变就是,内网的信息化变成了外网的互联网化。
传统信息化通常包括内网、固定场所、固定网络环境和固定的设备等关键词。而移动战略背景下的企业互联网化,则同时包括外网、随时、随地、员工我的设备、4G和Wi-Fi等关键词。这些不起眼的变化,给企业的业务带来的倒是天翻地覆的调整。
移动设备管理软件(Mobile Devices Management,MDM)曾风靡一时,可是购买了MDM的企业几乎无一例外地发现其很难推动。由于MDM伴随着员工自带设备(Bring Your Own Device,BYOD)。若是用企业的管理软件来管理员工我的设备,确定会有不少人反对。因此,大部分的MDM最终草草收场,只是管理了企业本身购买的一些移动设备。
企业移动化、互联网化的安全怎么保障? 这要知足3个层面的安全,即设备安全、传统安全和云端安全。
混合模式App开发技术能够实现相似于企业应用商店(如微信公众号)的动态权限绑定和受权模式,可以支持特定设备、特定的人,也能够选择不一样的子应用。此外,还能够实现随着用户工做内容的调整,根据设备编码和用户权限来实时分配全新子应用的功能。
这种基于企业移动应用商店的“子应用”模式,也是混合模式App开发技术成为企业移动战略支撑的关键。由于作得好的企业应用商店,不只可以知足传统原生模式开发的App所不能赋予企业的、对各类安全性的需求,还实现了对业务灵活性的管理目的。
APICloud做为中国主流的混合模式App开发技术服务提供商,一直在以布道者的身份推动混合技术在国内的发展和应用。咱们不只提供技术,也提供商业服务,所以会更多地深刻到大量的商业用户中去,如海尔、春秋航空、英特尔、中信证券、上汽等。咱们的团队结合不一样的商业场景和实际的商业客户需求,编写了《30天App开发从0到1:APICloud移动开发实战》,但愿可以为不一样规模的企业在移动信息化和互联网化进程中提供有价值的参考,同时也可以让从事App开发的技术人员有更多可借鉴的实战经验。
主要内容
本文从整体上介绍APICloud平台,包括APICloud应用的开发模式、设计思想、控制台使用流程等,并以一个HelloWorld App为例让读者体验一个完整的APICloud App的开发流程。
学习目标
(1)了解APICloud平台,了解APICloud相关的学习资源、入门资料和常见的问题。让没有接触过APICloud平台的读者,对平台有一个基础的了解;让学习过APICloud而且已掌握一部分技能的读者,经过本文的学习,能够快速找到须要的资料和解决问题的方法。
(2)学习如何在APICloud平台上建立、修改、调试、编译和运行一个最简单的APICloud App。掌握APICloud App完整的开发流程。
要对APICloud平台作一个全面的介绍,须要花很长的时间和不少的篇幅来说解每个细节,而本文做者但愿能用更多的篇幅来说解一个App的实际开发过程,讲解具体的代码实现。因此,本文在介绍APICloud平台的时候,是经过抛出一个个问题,而后告诉读者应该到哪儿去找对应的学习资源,到哪儿可以找到解决问题的方案。
本文将从APICloud能够作什么,如何获取使用帮助,APICloud的技术、产品和生态等多个方面对APICloud平台加以介绍。
1.1.1 查看APICloud平台能力
开发者在接触一个开发平台的时候,一般第一个想法就是去查看这个平台的能力。特别是那些想作App的、有着明确需求的开发者,他们会很是关心本身的需求在这个开发平台上是否可以知足。因此,本文开篇就先来解决这个开发者广泛关心的问题,读者能够带着本身预先想好的需求来了解APICloud平台,了解如何可以快速地在APICloud平台上查找相关的能力。
1.经过官方文档快速搜索功能模块
查看APICloud平台提供的能力,一个最基础也是最有效的方法就是查看APICloud的API文档。
APICloud官方网站中的文档页面如图1-1所示。如须要查看视频播放的功能,能够在文档中搜索“视频播放”,搜索结果如图1-2所示,能够看到在APICloud平台上有多种提供视频播放功能的模块,如videoPlayer(播放本地视频)、moviePlayer(播放网络视频)、polyvPlayer(保利威视播放器)、baiduPlayer(百度播放器)等。
图1-1
图1-2
点击其中一个搜索结果,查看模块的详细文档。好比点击“videoPlayer”以后能够看到这个模块对于视频播放提供了不少API,这些API基本覆盖了一个视频播放器全部常见的功能,如图1-3所示。
图1-3
再好比要查找支付功能,能够在文档中搜索“支付”,经过搜索结果能够看到在APICloud平台上有不少个提供支付功能的模块,如aliPay(支付宝)、wxPay(微信支付)、unionPay(银联支付)、paypal(PayPal支付)、iap(iOS应用内支付)等;也有ping++、beeCloud等第三方聚合类的支付模块。点击每一个模块都可以查看具体的API详情。
读者想了解APICloud平台有哪些能力,最简单的方法就是到APICloud官方文档中去搜索相应的功能,这样就能够一目了然地知道APICloud平台有没有相应的模块来支持本身想要的功能。
2. APICloud能力支撑体系
目前在APICloud平台上已经提供了600多个模块,上万个API。这些API基本能够覆盖一款App所需的全部经常使用功能,为方便表述,它们被分为“平台使用”“基础功能”“界面布局”“设备特性”“功能扩展”和“开放服务”六大类,其分类与具体包含内容如图1-4所示。
图1-4
1.1.2 开发模式、技术语言和平台定位
不少APICloud初学者会关心这些问题:APICloud App的开发模式是什么样的、使用什么技术语言、目前本身的开发团队是否适合使用APICloud开发App、整个APICloud的学习曲线是什么样的、入门简不简单等。
1.开发模式和技术语言
APICloud应用的开发模式是使用标准的HTML、CSS和JavaScript+APICloud扩展API来进行App开发,如图1-5所示。APICloud的App开发使用的是标准的HTML5技术,针对标准HTML5所不具有的功能或是用HTML5实现体验很差的功能(这些功能也是开发者在App开发过程当中很是经常使用的功能)。APICloud提供了600多个扩展模块和上万个API,经过这些模块和API来扩展HTML5的功能,知足App的开发需求。
图1-5
2.扩展API调用方式
APICloud扩展API的调用方式与调用标准的JavaScript方法是彻底同样的。APICloud引擎的核心API是放在window.api这个对象下面的,这个对象是APICloud在JavaScript全局做用域内扩展的惟一一个对象,可直接调用。若是想调用某个模块下面的方法,能够经过require的方式动态引入,经过在api.require方法的参数中指定某个模块的名称来引入相应的模块,而后调用模块下面的方法,具体演示以下。
1 //核心API在window.api对象下,能够直接调用 2 api.methodName(param, callback); 3 //扩展模块须要require引入,遵照CommonJS规范 4 var module = api.require('moduleName'); 5 module.methodName(param, callback); 6 param: {} //参数,是一个JSON对象 7 callback: function(ret, err){} //回调函数,是一个Function对象,异步方法调用的结果经过此函数返回
复制代码
全部API的调用方式都是相同的,第一个参数是一个JSON对象,承载着要传递给模块的信息;第二个参数是一个callback函数。APICloud大部分的API调用都是异步方式,在调用的时候,要指定一个callback函数,当这个API操做完成时,操做结果将经过该callback函数回调。
一些经常使用的调用方式,好比打开一个新窗口,能够调用api.openWin();打开通信录能够调用api.openContacts(),录音、图片缓存等也是调用相应的方法。若是想去加载文件系统模块,能够经过api.require("fs")来加载fs模块,而后调用fs模块下面的方法。使用条码扫描模块也是相似的。示例以下。
●打开新窗口:api.openWin()。
●打开系统通信录:api.openContacts()。
●录音:api.startRecord()。
●缓存网络图片:api.imageCache()。
●加载fs模块:var fs = api.require('fs')。
●新建一个文件:fs.createFile()。
●加载二维码/条形码扫描模块:var scanner = api.require('FNScanner')。
●打开二维码/条形码扫描:scanner.openScanner()。
APICloud技术是基于标准的HTML、CSS和JavaScript技术,并在标准的JavaScript基础上扩展了一个核心对象-api对象和数百个模块。这些模块可使用api.require函数载入,并使用操做标准JavaScript对象的方式调用上述模块列举出方法。
3.扩展API的做用
读者可能会问,APICloud为何要扩展这么多API呢?其实APICloud所扩展的API都是标准的JavaScript所不支持的方法,或是用标准HTML5来实现但体验很差的功能。读者能够把HTML5理解成一门技术、一门语言,可是它尚未达到一个平台的水平。这就是APICloud为何要作这些扩展。APICloud全部的扩展主要是围绕如下这4个方面进行的。
兼容性:在PC互联网时代,浏览器具备多种内核,JavaScript框架产生的最初缘由就是为了实现JavaScript代码在各类浏览器上的兼容和适配。在移动互联网时代,虽然在主流的手机系统中,Android和iOS的浏览器内核都是webkit,可是出于商业缘由,谷歌从webkit中创建了一个新的分支,叫blink。如今两个分支的主要贡献者分别是苹果和谷歌,因此将来这两个内核的兼容性问题会一直存在。
实用性:
Page不等于App,标准的HTML、CSS和JavaScript规范更可能是用来定义网页和文档的,例如如今的一些框架都在讲SPA结构,它是以单页面为主的,不少HTML标签是针对于文本信息展现的;而App则否则,App更可能是强调功能和体验,在原生系统中有不少的组件,HTML5标签和Native组件的设计规范是彻底不一样的。因此,想用标准的HTML5技术开发一个App是不现实的,人们不能直接把为WebPage所制定的规范直接搬到App上。
B/S架构与Client/Cloud架构:在PC互联网时代,终端产品的主要架构仍是B/S架构;可是在移动互联网时代,终端产品的主要类型是App,而App是一个完整的Client/Cloud架构。在移动端,实现界面和功能,在云端提供数据和服务。页面布局是存放在移动端的,功能实现也是在移动端完成,因此用户在使用时能够感觉到App的启动、页面渲染和布局展现是很快响应的。
速度、交互和体验:这3个问题是用HTML5技术直接开发App的最大挑战。其实,若是使用HTML5技术实现一个界面,渲染以后显示出来,用户看到这个界面时并不能马上分辨出它是用HTML5实现的仍是用Native技术实现的。可是当用户作一个交互,点击一下,体验一下响应速度或者作一个手势,触发一个动画,这时用户就能够很是清楚地感觉到,并能分辨出该界面是用Native技术开发的仍是用HTML5开发的。因此速度、交互和体验也是使用HTML5技术开发App必须去解决的问题。
持续性、静态标准与动态标准:HTML5的定稿花了7年时间,而且整个标准的迭代是缓慢的;而Android和iOS每一次版本更新都会新增不少功能,这些新增的偏偏都是当前行业里最须要的功能,但这些功能很难快速经过制定新的HTML5标准进行更新,并在各个浏览器里支持起来。那会是一个很是漫长的过程。
扩展性:在开发一款App的时候,开发人员须要扩展不少的功能,有时候要和行业特色结合,有时候还要跟硬件结合,这就会用到大量国内的开放服务,如推送、直播、智能识别等。全部的这些功能,标准的HTML5规范中都没有定义,全部的标准浏览器引擎也没有默认支持。
总的来讲,APICloud扩展的全部功能都是标准HTML5所没有的,若是HTML5有而且在App中运行起来没有任何问题,APICloud平台也没有必要去作这个扩展。APICloud全部扩展的功能其实就是为了去解决HTML5在兼容性、实用性、持续性和扩展性等方面的问题。
4.模块Store
在APICloud模块Store中能够查看APICloud平台扩展的全部功能,如图1-6所示。
图1-6
5. APICloud平台定位
APICloud是一个中间层,是在应用程序和系统之间的一层,在这一层中,APICloud聚合了开发一款App所须要的全部系统调用、开放服务和扩展功能,而后以统一API的形式提供给开发者调用。这就是APICloud平台的定位,如图1-7所示。
图1-7
1.1.3 技术、产品、生态、案例和商业模式
这部分有大量的内容须要给读者介绍,可是本文不想为此占用大量的篇幅。读者能够经过APICloud官网公开课的视频来详细了解。在官方视频教程2中有几百集的课程,其中“APICloud视频之初级代码篇第1~3讲”经过几小时的视频给读者详细介绍了APICloud技术、产品、商业模式、案例以及生态的方方面面,若是读者是第一次接触APICloud,咱们建议花必定的时间去观看这些公开课的视频。
1.1.4 开发者服务体系
开发者在选择或者使用一个平台的时候,必定会遇到不少的问题。遇到问题时应该如何解决?此外,开发者还会关心这个平台在提供技术的同时还能提供哪些服务?有没有一个完整的生态?有没有一个活跃的社区提供技术支持、方便学习和交流?
针对这些问题,本节列举如下APICloud开发者服务体系相关的产品。
1. APICloud开发平台
这里是APICloud的官方网站,也是整个APICloud应用开发和管理平台的入口。
2.开发工具
APICloud是一个移动应用的开发平台,开发APICloud应用须要编码工具。对于开发工具来讲,APICloud支持包括Atom、Sublime Text、Eclipse、WebStorm、VSCode,以及基于Node.js的CLI命令行工具。开发者在开发APICloud应用的时候,可使用本身喜欢的任意一款主流的编码工具,只须要在这些工具中安装相应的APICloud插件就能够了。
以Sublime Text3为例,如图1-8和图1-9所示,能够看到这里面有Windows版和Mac版的下载地址,这里所下载的是APICloud为Sublime Text提供的插件。下载完成后,打开Sublime Text,在Sublime Text中安装完APICloud插件以后,就能够在Sublime Text中使用“新建APICloud项目”“新建APICloud文件”“进行Wifi真机同步”“日志输出”“代码管理”等开发APICloud应用所需的相关功能。在其余工具中,如Atom、WebStorm、Eclipse和VSCode等也能够分别安装APICloud为这些工具所提供的对应插件,全部这些APICloud的工具插件都是免费开源的,能够在GitHub的APICloud开源分支中查看源码。
图1-8
本文案例的开发会全程使用APICloud Studio 2做为开发工具,APICloud Studio 2是APICloud提供给开发者的一款基于Atom扩展的全功能集成开发工具。在本书的附录B中,会对APICloud Studio 2开发工具的使用进行全面详细的介绍。
图1-9
3.开发文档
整个APICloud开发文档包含了3部份内容,第一部分是对APICloud的总体介绍以及开发工具的介绍,也就是其网页最左侧的这一列;中间部分是对APICloud API的介绍,包括端API、扩展模块、前端框架、云API等;最右侧是技术专题,这里会把开发过程当中常见的问题以技术专题的形式总结出来。无论是对APICloud的初学者,仍是已经用APICloud开发过应用的开发者,本文都建议在遇到问题的时候,第一个解决方式就是去查找文档。APICloud文档遵循简洁清晰的书写原则,用到某一个API的时候,直接到文档中查看其对应的使用说明便可。
4. 开发者社区
APICloud有着国内最活跃的HTML5混合开发者社区,在这个社区中,有不少优质和资深的APICloud开发者,用户在使用中遇到的问题在社区中提问均可以第一时间得到解答。APICloud平台上线至今,社区中已经沉淀了不少有价值的帖子和技术专题的讨论,因此很是建议开发者常去社区看看,那里的帖子都是各个开发者学习经验的总结。本文但愿读者在开发过程当中遇到问题的时候,能够到社区中查找相关的解答或者提问,初学者最好能花一些时间把新手入门的帖子从头至尾看一遍,这是很是有价值的。
5. VIP服务
不少大型企业或者创业公司在选择APICloud的时候,因为整个项目的开发周期比较紧张,而刚刚接触一个新的平台,使用中会遇到一些问题,这些问题在社区中是能够获得解决的,可是可能不够及时。针对这类客户,APICloud提供了VIP技术支持服务,企业也能够去购买APICloud企业版。固然这个是收费的,企业购买完以后,APICloud将以工单的形式提供技术支持,企业客户有任何问题,半个小时以内APICloud官方会有技术支持一对一地进行解答。
6.开源代码分享
APICloud提供了很是丰富的开源代码,这些源码包括App实例源码,不少都是APICloud开发者所开发的一些App模板源码,也包括一些模块的使用示例代码,以及App开发过程当中一些经常使用的JavsScript框架代码。固然,这里也有模块的源码,由于APICloud的不少模块都是开源的,因此模块的源码就是Android和iOS的模块工程源码。同时,APICloud为Sublime Text、Atom、WebStorm、Eclipse等全部主流的开发工具提供的插件、命令行的CLI工具,以及APICloud Studio全部的代码都是彻底免费开源的。
这里也有APICloud前端框架和官方文档的源码,APICloud官方文档自己就是开源的。读者若是发现官方文档的编写存在不够准确或者不够完善的地方,能够随时在官方文档的开源分支中提交修改,一同为APICloud生态发展作贡献。还有APICloud云SDK,也就是APICloud提供的云端服务,官方提供了不一样技术语言版本的SDK,包括Node.js、PHP、Java、.NET等,这些不一样语言版本的云API SDK也都是开源的。
更多APICloud开源代码能够到APICloud GitHub开源分支j查看。
j在GitHub中搜索“apicloudcom”。
7.商业案例展现
目前,基于APICloud平台开发的应用已有2万多款在苹果AppStore上线。在APICloud商业案例展现区,用户能够看到一些用APICloud开发出来的应用案例,每期会展现数百款的已上线App,这些案例都是用APICloud开发的商用App,不是WebApp,也不是微信公众号或HTML5网站。全部这些App旁边都有二维码,用户能够直接扫码安装体验,这些应用都是使用APICloud平台开发的。
若是APICloud的开发者开发了一款App,而且认为其性能体验不错,能够联系APICloud官方的运营人员,申请在官网展现这款App。APICloud能够在案例区为其免费展现,案例区会按期更新申请展现的App。初学者若是想看一下APICloud平台开发出来的App是什么样的运行体验,就能够直接扫码安装运行这些案例,看一下体验和效果。
8.模块Store(聚合API)
APICloud模块Store上展现了APICloud平台上全部的扩展模块。APICloud使用行业标准的模块扩展机制,对于具备Android和iOS开发经验的开发者,能够直接按照APICloud模块扩展机制为APICloud贡献模块,这些模块能够选择收费也能够免费。
目前,APICloud平台上有600多个模块,大部分的模块是免费的。大约有1/3是APICloud官方开发的,官方提供的全部模块都是免费的,基本能够覆盖App开发所需的所有基础功能;还有1/3是第三方服务厂商开发的,好比高德地图、科大讯飞语音识别、融云即时通信等;最后的1/3是我的开发者开发的,我的开发者提供的模块大部分都是收费的。APICloud是想创建一个生态,对于Android和iOS的开发者,能够很是轻松地为APICloud模块Store贡献模块,同时模块开发者能够为其开发的模块标一个价格,让其余开发者购买后使用。
9.模板Store
APICloud还有一款产品是模板Store。开发者在开发完一个应用以后,若是不想再运营这个应用了,或者是单纯想作一款应用的模板,若是它是一个完整的端到端的应用,整个需求和功能均可以达到一个标准商业应用的水平,就能够将它做为一个模板提交给APICloud。APICloud官方能够把它模板化后成为APICloud模板Store中的一款模板。总体是有一个审核流程的。模板审核经过以后,就能够在APICloud模板Store上进行销售。在模板Store上架后,其余开发者只需一键购买,在线支付,就能够在几分钟以内得到这样一个模板。所购买的产品包括这个模板的管理后台、模板的Android和iOS的安装包以及一些必要的皮肤定制等服务,同时在开发者的APICloud应用控制台中,也会有一个对应的“模板应用”的项目。
10. APICloud应用定制服务
在APICloud平台上天天都会汇集不少客户的App定制需求,由于不少客户承认APICloud平台和App开发模式,可是因为没有本身的开发团队,因此但愿APICloud可以为他们提供App定制服务,或者为他们推荐优质的团队来进行项目实施。APICloud应用定制服务有一套标准化的开发流程和项目管理流程。
1.1.5 新手入门APICloud应用开发
这里推荐一些优质的入门资料,读者能够在官方文档页面中找到这些资料。
APICloud新手开发指南,在这个指南当中,基本上涵盖了APICloud应用开发入门所需的各方面知识,而且APICloud官方也会不断更新这个教程,因此这个新手开发指南是全部APICloud初学者必需要认真阅读的文档。
APICloud新手教程集合贴,这是社区里的新手教程集合贴,里面有不少优秀开发者的开发技巧、经验和教程的总结,推荐新手必定要看。
●APICloud视频教程15,若是初学者想找一种更简便的方式去学习,也能够去看看APICloud的视频教程,在这个视频教程中已经有数百集的视频。
15点击官方网站中的“视频教程”。
●APICloud在线培训,APICloud按期会举办线上的视频直播培训,直播的老师既有APICloud工程师,也有优秀的APICloud开发者或其余培训机构的老师来直播。
在对APICloud平台有了基础的认识后,读者将跟随本节内容从零开始,建立、修改、调试、编译和运行一个最简单的App。这个App不包含任何复杂的开发技术,旨在让读者体验一个完整App的开发流程。在本节的最后,这个应用将能够在移动设备上运行。
1.2.1 注册APICloud帐号
在建立App项目以前,首先要有一个APICloud帐号,这个帐号很是重要,请妥善保管。点击APICloud官方网站右上角的注册按钮便可开始注册。注册过程很是简单,注册完成后请登陆帐户。
1.2.2 建立一个App项目
建立一个新的项目有两种方式:
在APICloud云平台上建立;
在APICloud的官方开发工具中建立。
APICloud推荐的集成开发工具是APICloud Studio 2。同时也为其余经常使用的开发工具软件提供了插件支持,如Sublime、Eclipse、WebStorm、Atom等,读者能够根据本身的使用习惯选择对应的工具。
本文以APICloud Studio 2为例。首先须要下载这个开发工具,选择官网首页的“App开发平台”,而后选择“开发工具”。
在新的页面中根据具体的操做系统选择对应版本的APICloud Studio 2进行下载。下载完成后将压缩包解压到任意位置,在解压后的文件中找到相似“apicloud-studio-2.exe”的文件,这是开发工具的可执行文件。建议为它建立桌面快捷方式以方便使用。
1.在APICloud云平台上建立新项目
在官方网站登陆成功后,将鼠标移动到页面右上角的用户名处,在显示的菜单中点击“开发控制台”。
打开控制台页面后,页面左侧是项目列表,如今它是空白的;在中间部分会显示APICloud的更新日志(APICloud平台自上线以来一直坚持每周更新一个版本)等平台动向信息;右侧是我的信息以及一些工具按钮,如图1-10所示。
图1-10
点击左上角的“建立应用”,在弹出的窗口中选中“Native App”(默认选项),在“名称”输入框中填入“HelloAPICloud”并在“说明”输入框中填入任意说明信息,以后点击建立。此时一个新的项目便被建立好了并显示了刚刚建立项目的管理页面,后续会对这个页面的相关功能进行按部就班的学习。
在项目建立完成后还须要将这个项目检出到本地进行开发,APICloud支持经过git或svn进行代码管理(关于代码版本管理的资料请查阅相关文档),即使读者不了解代码版本管理的相关知识也不妨碍本节的学习。
打开APICloud Studio 2,若是开发者是首次运行此开发工具则须要进行登陆。请用以前建立的帐号进行登陆,不然没法找到相应的项目。登陆成功后会进入欢迎页面。
此时开发工具已经得到了帐号权限,能够对项目进行操做了。点击菜单栏的“代码管理”→“代码检出”→“APICloud云端应用”,在出现的检索框中输入以前建立的项目名称“HelloAPICloud”,回车确认(也能够从下面的模糊搜索结果中选择相应的项目,如图1-11所示)。
图1-11
在弹出的对话框中选择这个项目在开发设备上的保存位置(例如在桌面上新建一个叫做“HelloAPICloud”的文件夹,而后选择这个文件夹)并点击“检出”。
在新弹出的输入框中保持默认,直接按回车便可,如图1-12所示。
图1-12
开发工具会自动从APICloud云端将帐号中的“HelloAPICloud”项目检出到本地计算机上,稍等即可以看到默认打开的代码编辑页面。
2.在APICloud Studio 2上建立新项目
打开APICloud Studio 2并登陆以前建立的帐号。点击菜单栏中的“文件”→“新建”→ “APICloud移动应用”,分别输入应用名称和应用说明,应用框架选择“空白应用”,以后点击完成。在弹出的对话框中选择新项目的建立位置,点击“建立”。
稍等即可以完成建立。此时在网站的控制台中能够看到刚刚建立的项目。
本文摘自《30天App开发从0到1:APICloud移动开发实战》
《30天App开发从0到1:APICloud移动开发实战》
邹达, 李德兴 著
点击封面购买纸书
本书介绍如何经过APICloud平台快速开发一款APP,从介绍APICloud平台开始,从零搭建APP框架,对数据通讯能力、js移动端应用、APICloud引擎架构、第三方开放平台服务应用发布和管理及更新迭代均有详细讲述。
随后详细对UI框架的使用进行分析,经过对热门行业的移动应用开发解决方案的介绍,让读者掌握真正的实战技巧——如何开发一款优质的APP。
推荐阅读
天天与你分享IT好文。
在“异步图书”后台回复“关注”,便可免费得到2000门在线视频课程;推荐朋友关注根据提示获取赠书连接,免费得异步e读版图书一本。赶忙来参加哦!
点击阅读原文,购买《30天App开发从0到1:APICloud移动开发实战》