主要内容:

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

SuperWebview开发指南IOS

SuperWebView Android API Reference

SuperWebView iOS API Reference

推荐视频

SuperWebview公开课视频

SuperWebview视频 Android

SuperWebview视频 iOS

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

  1. Tomcat 8默认工具manager管理页面访问配置

    Tomcat 8默认工具manager管理页面访问配置 1. 分配相关的角色权限 需要配置的配置文件是${catalina.home}/conf/tomcat-users.xml先给Tomcat访问相 ...

  2. SpringBoot Beans管理和自动配置

    原 SpringBoot Beans管理和自动配置 火推 02 2017年12月20日 21:37:01 阅读数:220 SpringBoot Beans管理和自动配置 @SpringBootAppl ...

  3. 9.Spring Cloud Config统一管理微服务配置

    Spring Cloud Config统一管理微服务配置 9.1. 为什么要统一管理微服务配置 9.2. Spring Cloud Config简介 Spring Cloud Config为分布式系统 ...

  4. springcloud(十二)-springcloud-config统一管理微服务配置

    1.为什么要统一管理微服务配置 对于传统的单体应用,常使用配置文件管理所有配置.例如一个SpringBoot开发的单体应用,可将配置内容放在application.yml文件中.如果需要切换环境,可设 ...

  5. CentOS学习笔记--账号管理与权限配置

    Linux 的账号管理与权限配置 管理员的工作中,相当重要的一环就是『管理账号』啦! 使用者标识符: UID 与 GID 虽然我们登陆 Linux 主机的时候,输入的是我们的账号,但是其实 Linux ...

  6. SharePoint管理中心来配置资源限制(大名单)

    SharePoint管理中心来配置资源限制(大名单) 名单SharePoint核心.SharePoint一切的一切都是列表. 我可以说SharePoint内容为驱动的列表. 之前版本号的SharePo ...

  7. OCM_第三天课程:Section1 —》表空间的操作和管理、服务配置

    注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...

  8. spring+springMVC+Mybatis 中使用@Transcational方式管理事务的配置方法

    springMVC 中,事务通常都在service层控制,当然controller层也可以用事务,只要配置配对,但通常不建议直接在controller层配事务,controller的作用是管理参数以及 ...

  9. 使用Django-environ管理多个配置

    使用Django-environ管理多个配置 https://django-environ.readthedocs.io/en/latest/

随机推荐

  1. C# InDepth 第一章

    深入理解C#第一部分,第一章介绍了C#开发得进化史. 1 从数据类型定义引入c#1到4中得改变 c#2:强类型集合(泛型) c#3:自动实现得属性和简化得初始化 c#4:命名实参 2 排序和过滤 排序 ...

  2. 自己从0开始学习Unity的笔记 I (C#字符串转换为数字)

    我基本上从0开始学习编程,运算符基本上跳过,因为知道了 “=”这个符号相当于赋值,然后“==”才是等于,其他和普通运算符号差不都,也就跳过了. 最基础的赋值那种,我看了下代码,似乎没什么难度,估计新手 ...

  3. Dependency injection configurations into views in asp.net core

    本文展示如何在ASP.NET Core MVC Application Razor视图中注入和使用应用程序的配置信息. 将配置信息添加到appsettings.json中: { "Loggi ...

  4. 《JavaScript高级程序设计》3.7 函数

    位于return语句之后的代码不会执行; return语句也可以不带有任何返回值. 这种情况下, 函数在停止执行后会返回undefined值. 这种用法一般用在需要提前停止函数执行而又不需要返回值的情 ...

  5. Cordova - 解决升级NDK之后无法编译!

    先前Cordova工作正常,今天升级了一下Android Studio,随后发现NDK也有升级包了,于是顺利升级了NDK!升级完毕发现,无法正常编译了,错误提示如下: No toolchains fo ...

  6. 790. Domino and Tromino Tiling

    We have two types of tiles: a 2x1 domino shape, and an "L" tromino shape. These shapes may ...

  7. linux 中定时执行python脚本

    一.让Python随Linux开机自动运行 准备好要自启的脚本auto.py 用root权限编辑以下文件 sudo vim /ect/rc.local 在exit 0上面编辑启动脚本的命令(编辑rc. ...

  8. Windows下TensorFlow安装指南(图文版)

    随着深度学习概念火起来,TensorFlow也跟着成为业界流行的深度学习框架.它采用CPU+GPU的并行计算模式,使得神经网络可以有效的并行计算,从以前的三层网络到现在的深层网络,深度学习+tenso ...

  9. ng的点滴记录

    1,directive http://damoqiongqiu.iteye.com/blog/1917971/ 2,constructor  https://segmentfault.com/q/10 ...

  10. 正则表达式学习之grep,sed和awk

    正则表达式是用于描述字符排列和匹配模式的一种语法,它主要用于字符串的模式分割.匹配.查找以及替换操作. 描述一个正则表达式需要字符类.数量限定符.位置限定符.规定一些特殊语法表示字符类,数量限定符和位 ...