APP开发平台 > Blog > APICloud开发者进阶之路 | APICloud扩展模块

APICloud开发者进阶之路 | APICloud扩展模块

  经过4章的学习,不知道大家对APICloud平台了解的如何?如果中途有什么疑问可以来APICloud官方网站的讨论社区和我们工程师进行交流。

  本期,我们继续与大家分享《30天,App开发从0到1》第五章第一节的内容:

  APICloud 扩展模块

  本章主要讲解APICloud中扩展模块的使用。在示例项目中,图片轮播、原生输入框、地址选择菜单等都是通过模块实现的。

  ● 学习目标

  1.了解模块的基本概念。

  2.了解如何自定义扩展模块。

  3.学习使用UIScrollPicture、UIInput和UIActionSelector。

  APICloud是以模块的形式进行API的组织和管理,基于APICloud模块扩展机制,APICloud 官方、第三方机构和社区开发者为了丰富UI和功能提供了大量的扩展模块。

  开发者可根据自己的需要灵活选择相应模块,高度定制自己的app。

  APICloud 端引擎架构

  APICloud中许多功能是通过不同的模块提供的,如果现有模块不能满足开发者的需求,也可以将所需功能开发成新的模块并发布出来。

  整个端引擎架构分为4层,最上层是app。

  开发APICloud app 使用的是标准的HTML、CSS 和JavaScript。APICloud所有扩展的能力都是通过JavaScript的API来提供的。

  API层包括4个主要的功能模块:

  ◆ Framework是前端框架,如APICloud官方提供的api.js或其他移动端框架都属于Framework ;

  ◆ Profile通常用于提供APICloud API到其他平台的接口转换(如微信或 PhoneGap) ;

  ◆ Loader实现模块的加载,当调用api.require()方法时会使用Loader模块来加载指定模块;

  ◆ Bridge负责API的桥接,当通过JavaScript调用模块的方法时Bridge模块会将调用桥接到引擎或模块的方法中。

  引擎层包括12个主要模块:

  Model是对APICloud数据云中的数据模型进行管理;Service是用于管理 APICloud提供的云端服务,如版本管理、云修复、闪屏广告等;Access就是实现上一章介绍过的应用沙箱和访问协议等;Module是用来管理模块的生命周期和方法调用。

  Module层中包括各类封装好的模块,可以通过api.require() 来引入。

  HTML解析器、CSS 解析器、JavaScript 引擎是负责HTML5代码的解析和渲染;Hybrid Render则是APICloud核心的混合渲染模块。

  OS 层是操作系统接口。

  APICloud 模块调用过程

  在app中调用模块首先需要运行api.require()。

  引擎收到require命令后会去初始化模块。

  通过JavaScript调用模块方法时引擎会桥接到模块上的对应方法。

  APICloud模块中的大部分方法都是异步的,需要在调用时传入回调函数。

  当模块有数据返回的时候,就会通过notify的形式来通知引擎,并将模块处理完的数据交给引擎,然后引擎找到调用这个方法时所传递过来的callback函数,再通过调用callback的方式,将数据返回给app。

  更多app资讯,请关注www.apicloud.com

  提交app定制需求,了解报价和周期:

  https://app.apicloud.com/index?uzchannel=500


2018-07-23 来源:APICloud

APICloud

An efficient app outsourcing platform that guarantees timely delivery!

Submit Requirements
x