Day7:掌握APICloud应用管理相关服务的配置使用和相关API,包括:应用发布、版本管理、云修复、闪屏广告等。理解APICloud APP优化策略和编码规范;了解APICloud多Widget管理机制和SuperWebview的使用
主要内容:
1. 应用发布
1.1 云编译

1.2 全包加密
- 网页全包加密:对网页中全包的html,css,javascript代码进行加密,加密后的网友代码都是不可读的,并且不能通过常用的格式化工具恢复。代码在运行前都是加密的,在运行时进行动态解密。
- 一键加密、运行时解密 在开发过程中无需对代码做任何特殊处理,在云编译时选择代码加密即可。
- 零修改、零影响 加密后不改变代码的大小,不影响运行效率。
- 安全盒子 定义了一个安全盒子,在盒子内的代码按照加密和解密进行处理,其他代码不受影响。
- 重新定义资源标准 对保护的代码进行统一资源管理,加速资源加载,加速代码运行。
1.3 其它安全配置
Config文件中对access字段的配置
<access origin="local" />
<access origin="http://apicloud.com" />
推荐文档:应用配置说明
2. 版本管理
2.1 在APICloud控制台管理版本
推荐文档:本版管理使用说明
2.2 Config文件相关配置
<preference name="autoUpdate" value="true" />
2.3 mam模块使用
3. 云修复

3.1 在APICloud控制台进行云修复(应用内热更新)
推荐文档:云修复使用说明
3.2 Config文件相关配置
<preference name="autoUpdate" value="true" />
<preference name="smartUpdate" value="false" />
3.3 相关API使用
- smartupdatefinish事件
- api.rebootApp()方法
4.闪屏广告
4.1 在APICloud控制台使用闪屏广告
推荐文档:闪屏广告使用说明
4.2 Config文件相关配置
<preference name="autoUpdate" value="true" />
4.3 相关API使用
- launchviewclicked事件
5.优化策略
5.1 了解HTML5特性
- 去掉浏览器默认样式
- 可点击区域使用div
- 使用语义化的标签
- 发挥HTML5和CSS3的新特性
5.2 窗口结构
- Windows+Frame结构
- Frame的高度计算
- 按需求优先使用Layout
5.3 网页加载速度
- HTML、CSS、JS代码写在同一个页面中
- 公用的CSS、JS尽量少和小,不要随意加载无用的CSS或JS文件
- 尽量减少过多的link或script标签
5.4 不实用重型框架
- 避免使用jQuery或BootStrap等重型的框架
- 摆脱对$的依赖,培养自己动手的习惯
- 使用Mobile First,功能独立的框架
5.5 屏幕适配
- Viewport
- UI尺寸
- 量图标准
- 布局方式(弹性响应式+流式)
5.6 数据加载
- 掌握api.ajax所有参数配置作用,按需求配置使用
- 监听网络状态
- 合理处理异常信息
- 下拉刷新和上拉加载
- JS模板
- 数据缓存
5.7 图片处理
- 减少内存占用
- 减少图片缩放等耗性能的操作
- 在服务区端或使用第三方存储服务来处理图片
5.8 交互响应速度
- click事件速度优化
- 使用平台扩展手势事件
- 使用api.parseTapmode进行主动tapmode处理
- 点击区域和点击交互效果
5.9 尊重系统特性
- 适时更新UI,理解窗体切换和界面渲染关系
- 无论是Android还是iOS系统,在进行窗体切换的时候,如果窗体本身正在进行渲染(Window或Frame所加载的网页没有渲染完毕),则会影响窗体切换动画的流畅性,出现卡顿或丢帧的情况。
- 建议在打开Window或Frame的时候,所加载的静态网页不能过大,内容不要太多,能快速的渲染完毕,不影响窗体切换动画的执行,在切换动画执行完毕后再进行动态数据的加载和界面的刷新。
- 避免body级别的背景图片,以原生的方式高效实现
- 如果需要给整个窗体设置背景图片,不建议通过给body元素指定background的方式来实现,建议在openWin或openFrame的时候通过指定bgColor参数来实现。
- 也可以通过在config.xml中配置windowBackground选项来设置全部窗体的背景图片。
- 页面之间使用pageParam传完成轻量级参数传递,避免使用过大的参数
6.编码规范
- 遵循APICloud Widget包结构来组成应用代码
- Window、Frame及html文件命名规范
- 使用语义化的标签组织页面结构,JS代码中获取的元素要明确指定id,非语义化标签样式定义需要添加class
- 任何文件避免使用中文命名、不用包含大写字母
- 避免使用?进行参数传递,要使用pageParam
7.Widget管理
7.1 多Widget架构

- 通过ID对Widget进行管理
- Widget在界面上表现为独立的窗口容器,由多个窗口所组成
- 每一个Widget在代码、资源、窗口上都完全独立
- 同一时刻,应用中只能有一个Widget在界面显示
- 按作用分为主Widget和子Widget
- Widget之间可以相互调用
7.2 主Widget
- 加载机制:是应用的入口Widget,应用启动之后首先自动加载运行主Widget
- 生命周期:等于整个应用的生命周期,关闭主Widget就会退出应用
- 配置文件:作为应用的配置文件,在云端编译应用的时候使用
- 代码位置:编译后存在于应用的安装包中,即ipa或apk包中
7.3 子Widget
- 加载机制:不会被应用自动加载运行,需要被其他的Widget调用才能运行
- 生命周期:从api.openWidget开始,到api.closeWidget结束
- 配置文件:对引擎和云端设置的配置项无效,其他的配置项有效
- 代码位置:可以存放在于应用的安装包中,也可以存在于应用沙箱中
7.4 相关API使用
- 打开子Widget:api.openWidget
- 关闭子Widget:api.closeWidget
- 获取参数:api.wgtParam
子Widget搜索路径:主widget包的wgt目录、沙箱中的wgt目录
推荐视频:初级代码篇第13讲
8. SuperWebview
8.1 SuperWebview介绍
SuperWebView是APICloud一款重要的端引擎产品,致力于解决系统WebView功能弱、体验差等问题,加速H5与Native的融合。SuperWebView以SDK的方式提供,原生应用嵌入SuperWebView替代系统WebView,即可在H5代码中使用APICloud平台的所有端API和云服务。
8.2 SuperWebview特点
- 以SDK的方式提供,嵌入到原生工程中使用;
- 为每个应用动态编译生成专属的SuperWebView;
- 可以调用平台所有端API,通过应用控制台进行配置;
- 可以使用平台所有的云服务,如版本管理、云修复、数据云等。
推荐文档
SuperWebView Android API Reference
SuperWebView iOS API Reference
推荐视频
Day7:掌握APICloud应用管理相关服务的配置使用和相关API,包括:应用发布、版本管理、云修复、闪屏广告等。理解APICloud APP优化策略和编码规范;了解APICloud多Widget管理机制和SuperWebview的使用的更多相关文章
- Tomcat 8默认工具manager管理页面访问配置
Tomcat 8默认工具manager管理页面访问配置 1. 分配相关的角色权限 需要配置的配置文件是${catalina.home}/conf/tomcat-users.xml先给Tomcat访问相 ...
- SpringBoot Beans管理和自动配置
原 SpringBoot Beans管理和自动配置 火推 02 2017年12月20日 21:37:01 阅读数:220 SpringBoot Beans管理和自动配置 @SpringBootAppl ...
- 9.Spring Cloud Config统一管理微服务配置
Spring Cloud Config统一管理微服务配置 9.1. 为什么要统一管理微服务配置 9.2. Spring Cloud Config简介 Spring Cloud Config为分布式系统 ...
- springcloud(十二)-springcloud-config统一管理微服务配置
1.为什么要统一管理微服务配置 对于传统的单体应用,常使用配置文件管理所有配置.例如一个SpringBoot开发的单体应用,可将配置内容放在application.yml文件中.如果需要切换环境,可设 ...
- CentOS学习笔记--账号管理与权限配置
Linux 的账号管理与权限配置 管理员的工作中,相当重要的一环就是『管理账号』啦! 使用者标识符: UID 与 GID 虽然我们登陆 Linux 主机的时候,输入的是我们的账号,但是其实 Linux ...
- SharePoint管理中心来配置资源限制(大名单)
SharePoint管理中心来配置资源限制(大名单) 名单SharePoint核心.SharePoint一切的一切都是列表. 我可以说SharePoint内容为驱动的列表. 之前版本号的SharePo ...
- OCM_第三天课程:Section1 —》表空间的操作和管理、服务配置
注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...
- spring+springMVC+Mybatis 中使用@Transcational方式管理事务的配置方法
springMVC 中,事务通常都在service层控制,当然controller层也可以用事务,只要配置配对,但通常不建议直接在controller层配事务,controller的作用是管理参数以及 ...
- 使用Django-environ管理多个配置
使用Django-environ管理多个配置 https://django-environ.readthedocs.io/en/latest/
随机推荐
- django分页及搜索后如何翻页
django自带了Pagnator 导入 from django.core.paginator import Paginator, PageNotAnInteger, EmptyPage 分页 def ...
- MVC下使用Areas
(一) 为什么要分离 MVC项目各部分职责比较清晰,相比较ASP.NET Webform而言,MVC项目的业务逻辑和页面展现较好地分离开来,这样的做法有许多优点,比如可测试,易扩展等等.但是在实际的开 ...
- ABP框架入门踩坑-使用MySQL
使用MySQL ABP踩坑记录-目录 起因 因为我自用的服务器只是腾讯云1核1G的学生机,不方便装SQL Server,所以转而MySQL. 这里使用的MySQL版本号为 8.0. 解决方案 删除Qi ...
- 【大数据之数据仓库】kudu性能测试报告分析
本文由 网易云发布. 这篇博文主要的内容不是分析说明kudu的性能指标情况,而是分析为什么kudu的scan性能会这么龊!当初对外宣传可是加了各种 逆天黑科技的呀:列独立存储.bloom filte ...
- python打造渗透工具集
python是门简单易学的语言,强大的第三方库让我们在编程中事半功倍,今天我们就来谈谈python在渗透测试中的应用,让我们自己动手打造自己的渗透工具集. 难易程度:★★★阅读点:python;web ...
- windows 安装nexus3
下载地址 nexus官网下载页面 文件名:nexus-3.3.1-01-win64.zip,解压,cd到bin目录 运行: nexus.exe /run 1 安装成系统服务: nexus.exe /i ...
- php-fpm定时器
php-fpm有三种定时器 1)主进程接收到用户的信号,例如sigusr,主进程执行kill(子进程号,sigquit),的同时,设置定时器,在一个无限循环里如果当前时间 大于或等于 该定时器的过期时 ...
- Python sys os getpass 包的导入
块的导入 导入一个py文件,解释器解释该py文件 导入一个包,解释器解释该包下的 init.py 文件 import module 直接导入模块 from module.xx.xx import xx ...
- python实现百度地图API获取某地址的经纬度
申请百度API 1.打开网页 http://lbsyun.baidu.com/index.php?title=首页 选择功能与服务中的地图,点击左边的获取密匙,然后按照要求申请即可,需要手机和百度账号 ...
- Python生成gexf文件并导入gephi做网络图分析
Gephi是一款优秀的复杂网络分析软件,支持导入多种格式的文件.gexf格式是Gephi 推荐的格式,基于 XML.本文是一个用python写的简单Demo,示例如何生成一个典型的gexf格式文件.代 ...