六、接口
1.页面路由
名称 | 类型 | 能力 | 备注 |
router.push | 接口 | 支持 | 不支持schema 为http/https/internal的页面跳转,跳转uil和参数中不能包含”__SRC__”关键字符串 仅支持deeplink方式跳例如跳转到快应用,如跳转Home页面,并携带key1、key2信息,示例如下: routerHomePage() { router.push({ uri: 'hap://app/com.application.demo/Home?key1=value1&key2=value2' }) } |
卡片启动快应用页面启动模式:
在router.push中携带启动标识参数“___PARAM_LAUNCH_FLAG___”可以标识不同的跳转方式。此标识支持以下参数:
标志 | 类型 | 必填 | 参数 | 参数 |
___PARAM_LAUNCH_FLAG___ (1050+) | String | 否 | {clearTask|standard} | 跳转快应用页面时传递的页面参数
standard:携带此参数时会每次打开新的目标页面(多次打开目标页面地址时会存在多个相同页面) |
打开页面的行为逻辑:
(1)若已经打开页面栈为 PageA -> PageB -> PageC,此时以clearTask标识启动PageB
销毁PageC页面实例;
销毁PageA页面实例;
如果pageB页面实例已存在,回到此页面实例并回调此页面生命周期的onRefresh函数;
如果PageB页面实例不存在,新建PageB页面实例并显示;
(2)若已经打开页面栈为 PageA -> PageB -> PageC,此时以standard标识启动PageC
PageC存在与否,都会新建PageC,可能存在多个pageC的现象;
(3)若已经打开页面栈为 PageA -> PageB -> PageC,此时不设置跳转标志且不设置跳转具体页面,属于历史跳转模式;
PageC在页面栈的栈顶,会默认使用栈顶的历史页面进行显示,即跳转到历史页面。
2.界面交互
名称 | 类型 | 能力 | 备注 |
system.prompt | 接口 | 支持 | 只支持showToast |
3.网络访问
名称 | 类型 | 能力 | 备注 |
system.fetch | 接口 | 支持 | 不宜请求过大数据,请求接口的数据量<100k的数据量,超过100k将被禁止使用 注:解析fetch回来的数据,在解析时必须添加try-catch包围,防止返回的数据异常时解析报错,导致卡片显示异常 |
4.定时器
名称 | 类型 | 能力 | 备注 |
setInterval | 接口 | 支持 | 此方法会后台做循环运行,影响手机的运行效率和功耗,请不要将此方法用于定时获取网络状态检测或者进行数据定时更新请求 一些特殊的卡片,比如股票或者打车类卡片需要实时刷新卡片数据的,只能在卡片onShow时调用,onHide时请及时释放,防止卡片后台更新 |
setTimeout | 接口 | 支持 | 请不要将此方法用于循环检测网络状态或者进行数据定时更新请求 仅限用于卡片fetch时设置超时 |
5.文件数据
名称 | 类型 | 能力 | 备注 |
system.storage | 接口 | 支持 | 此接口一般用于记录一些状态或简单的字符串信息,每次存储的数据量不宜过大。此接口存储的数据支持卡片和快应用程序数据共享,快应用和卡片可以对同一个Key进行读写数据 |
6.系统能力
名称 | 类型 | 能力 | 备注 |
system.clipboard | 接口 | 支持 | |
system.geolocation | 接口 | 支持 | (1)仅支持geolocation.getLocation,返回wgs84标准坐标,不支持其他标准类型 (2)需要用户在快应用中授权后卡片才能成功获取地理位置信息。卡片与快应用的权限是互通的,用户在快应用中授权后,卡片即拥有获取地理位置信息的权限,用户一次授权后,不需再次授权 |
system.calendar | 接口 | 支持 | |
system.network | 接口 | 支持 | 仅支持获取网络类型network.getType 网络类型,可能的值为 2g,3g,4g,wifi,none,5g(1075+),bluetooth(1075+),others(1075+) |
system.device | 接口 | 支持 | 仅支持device.getInfo |
system.battery | 接口 | 支持 |
7.安全能力
名称 | 类型 | 能力 | 备注 |
system.cipher | 接口 | 支持 | 仅支持RSA加密 |
七、刷新管控机制
刷新管控机制是客户端限制卡片刷新的一种机制,目的在于限制卡片访问网络或者刷新卡片界面的频率,防止卡片影响客户端的流畅度和手机流量、功耗。
在刷新管控机制下,卡片在一个时间周期内仅能获取到一次onShow生命周期的钩子函数回调,达到限制刷新的目的。
刷新管控需要开发者在卡片的manifest.json配置文件中设置refreshDuration和refreshDurationInWifi两个刷新周期配置,具体描述参见《卡片manifest.json》章节。不配置或者设置刷新周期为0时,刷新管控机制默认关闭。
开发者在开发卡片调试过程中,设置refreshDuration和refreshDurationInWifi两个刷新周期的配置后,模拟刷新管控功能可以在调试器中勾选“刷新管控”来开启或关闭,勾选开启后左右滑动卡片,卡片在一个刷新周期内仅能收到一次onShow回调,取消勾选后,每次都能收到onShow事件。
八、卡片显示效果调优
本章节目的在于指导开发者怎样开发一张拥有更优展示效果Jovi卡片,给用户更好的卡片体验,提高提审的通过率。请开发者务必详细阅读本章节,熟悉相关概念及流程并在卡片中加入必要的处理逻辑。
概念1:首次加载。一般指用户手机上第一次使用卡片,手机本地还没有卡片的相关资源和用户数据,手机会下载卡片rpk包并进行安装,安装完成后进行展示。会执行卡片生命周期onInit->onReady->onShow;
概念2:卡片曝光。指卡片对用户可见,从其他界面回到卡片展示页面,算是一次曝光;会执行卡片生命周期onShow;
概念3:重新加载。首次加载完成以后,手机系统的一些动作会导致卡片重新进行展示,如:用户切换手机字体、主题、重启手机或者手机的一些其他机制,会使卡片重新加载并显示。此时会执行卡片生命周期onInit->onReady->onShow(卡片对用户可见时执行,不可见不会执行此生命周期);
注意:
卡片调试器中的“清除数据”按钮可模拟卡片首次加载,“重新加载”按钮可以触发卡片重新加载。
“正在加载中...”提示页面
卡片首次加载或者重新加载时,有可能fetch请求返回数据较慢,卡片需要先显示“正在加载中...”的文案提示页面作为过渡页,样式参见《Jovi卡片服务UI规范指南》;
加载失败页面
卡片在首次加载时,如果手机无网络、解析服务器返回数据失败或者访问网络超等失败情况时,需要统一显示“数据加载失败,请点击重试”文案提示页面,“请点击重试”几个字请做蓝色处理,并且支持用户点击重试,样式参见《Jovi卡片服务UI规范指南》;
再次加载时,如果处在手机无网络或者fetch失败,需要获取上次存储的数据(每次fetch的数据都使用storage存储到本地)进行展示。开发者不必担心使用上次存储的数据显示时图片会无法加载,因为每次图片加载成功后,引擎框架会默认缓存卡片中的图片资源,只要Image组件的静态地址不变,图片在无网的情况下也可以正常显示;
注意:
卡片的fetch不支持直接设置超时参数,所以开发者需要使用定时器做超时,超时时间固定为5s(不可以使用其他值),fetch 5s后返回的数据需要废弃。
1.首次加载处理逻辑
2.曝光参考处理逻辑
vivo信息流广告的展现样式是怎样的?哪些产品可以投放vivo信息流广告?目前巨宣网络主要为vivo广告主提供信息流推广,拥有多年的vivo推广开户经验,效果还是比较不错的,vivo广告投放请找巨宣网络!!!
- 2024-10-18
双11期间vivo广告大促攻略增长秘籍,请查收… - 2024-10-18
生态汇聚,融界启航—vivo广告营销打造终端… - 2024-09-25
新功能!vivo广告快生态神器—ROI出价强势… - 2024-09-21
vivo广告2024年8月25日-9月8日行业数据报告… - 2024-09-11
vivo广告2024年8月11日-8月25日行业数据报… - 2024-08-30
vivo广告2024年3月25日-4月7日行业数据报告… - 2024-08-24
vivo广告2024年7月28日-8月11日行业数据报… - 2024-08-22
下载CTR飙升近50%!vivo广告这个新功能转化… - 2024-08-17
vivo广告营销社交办公行业沙龙,纳西寻春,… - 2024-08-14
还在为无效线索头疼?这个新功能轻松拯救!…
管理员
该内容暂无评论