美文网首页
APICloud开发者进阶之路 | APICloud扩展模块

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

作者: APICloud | 来源:发表于2018-07-21 10:55 被阅读0次
    image

    经过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。

    相关文章

      网友评论

          本文标题:APICloud开发者进阶之路 | APICloud扩展模块

          本文链接:https://www.haomeiwen.com/subject/zjfhmftx.html