上线白屏
文件输出路径问题。
需配置输出打包为build;
publicPath:’./‘;
同时新增配置输出文件 gbc.json
gbc.json:
{
"type": "gov-build-config",
"version": "1",
"entryHTML": "/index.html"
//根据文件输出路径进行配置entryHTML
}
单点登录:
需将回调地址修改成自己修好了登录逻辑的页面。否则会报错,同时需要注意路径问题
Tips:应用如果被迁移到IRS服务侧,上传代码会监测项目内是否存在外链,window.location.herf。
二次回退问题
watchApp() {
window.addEventListener(
"pageshow",
function (event) {
if (
event.persisted ||
(window.performance && window.performance.navigation.type == 2)
) {
ZWJSBridge.close()//这个是浙里办内部的api,调用close()接口关闭打开的页面
.then((result) => {
console.log(result);
})
.catch((error) => {
console.log(error);
});
}
this.isLogin();
},
false
);
},
埋点问题
浙里办使用aplus进行埋点 ,m.gif进行参数比对
//index.html
<script
type="text/javascript"
src="https://d.alicdn.com/alilog/mlog/aplus.js?id=202951085">
</script>
//home--login
//配置以及基础埋点采集
SetZwaplus() {
;(function(w, d, s, q, i) {
w[q] = w[q] || []
var f = d.getElementsByTagName(s)[0]
var j = d.createElement(s)
j.async = true
j.id = 'beacon-aplus'
j.src = 'https://d.alicdn.com/alilog/mlog/aplus.js?id=202951085'
f.parentNode.insertBefore(j, f)
})(window, document, 'script', 'aplus_queue')
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['aplus-rhost-v', 'alog.zjzwfw.gov.cn']
})
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['aplus-rhost-g', 'alog.zjzwfw.gov.cn']
})
// 这个会落到 app_key 字段上
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['appId', '60506758']
})
// 单页应用 或 “单个页面”需异步补充 PV 日志参数还需进行如下埋点:
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['aplus-waiting', 'MAN']
})
// 单页应用路由切换后 或 在异步获取到 pv 日志所需的参数后再执行 sendPV:
aplus_queue.push({
action: 'aplus.sendPV',
arguments: [
{
is_auto: false
},
{
miniAppId: 'APPKEY', // 在应用管理平台进行获取
miniAppName: 'xxxx'
}
]
})
}
}
//用户个人信息埋点//在登录成功后进行调用即可
SetZwUserAplus() {
// 设置用户信息埋点
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['_hold', 'BLOCK']
})
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['_user_nick', 'name'] // 用户名 单点登录获取 (脱敏)
})
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['_user_id', 'userid']//用户id 单点登录获取
})
aplus_queue.push({
action: 'aplus.setMetaInfo',
arguments: ['_hold', 'START']
})
},
Q:在做应用适老化的时候,发现样式以及生命周期在跳转外链后丢失和停止
图片加载+生命周期中止
A: 暂时定位于,之前写的单点登录采用的是window.location.href的方式去跳转外部政务网,然后浙里办无感知登录后,回调到项目相应地址,这一步造成的。原因:缓存原因/抑或是原来渲染的页面未失效,生命周期不执行。
解决方案:
window.addEventListener('pageshow', () => {
//回退到vue应用执行的操作
})
原先应该在vue应用执行的操作
//增加window.监听事件
tips提示:
- 浙里办本身自己不支持视频播放,没有对应接口和组件
- 接口封装:使用浙里办的接口去封装自己的接口
- 浙里办不提供文件上传服务,在出现需要上传文件的需求,需自建服务器
- 浙里办不支持也不限制pdf的展示,实际项目中,使用pdf.js 展示pdf在浙里办上不展示,只展示base64编码,建议采用文件服务器上传,使用链接打开
- 浙里办中文字(font-size)在IOS和安卓上不同的问题: 因为webkit内核的浏览器会根据容器的宽来做“适应”的字体大小的计算,代码中.item元素内容长短不一,导致容器的宽不一致,部分产生了换行,从而导致浏览器做不一样的缩放处理。(需去做样式上的适配,或者根据当前使用的是安卓或者ios 去适配字体)
以下两点可能为项目特例,仅供参考
- 视频加载问题:问题暂时定位于视频格式,IOS支持 h264编码格式的视频 。因为存在一个视频能播放一个不能播放 (h264编码的压缩级别问题导致)
- 使用vue-video-player ,样式会失效(按钮变成小方块,苹果样式丢失,video controlBar),同时网络问题,基本上比较大的视频(大概70以上),iOS 的分段视频加载导致视频基本在浙里办上加载不出来。在支付宝浙里办上,甚至会出现该模块加载不出来,导致中间白屏。
审核主要难点:
浙里办多个审核人员可能会提出不一样的意见:
1、同时提交审核材料的时候需要提供项目使用录屏, 线上环境项目的功能需要同录屏中出现的功能保持一致性
2、资源的加载慢
3、项目中不允许出现引流内容(二维码,外链等)
浙里办文档地址 :
接入规范:
https://odynww.yuque.com/docs/share/525e3e8a-ad52-421b-90da-2d76808e3050#PUtwW
审核规范:
https://odynww.yuque.com/docs/share/04f42681-8972-4b0d-9f06-2be2d5f76389
适老化规范:
https://odynww.yuque.com/docs/share/87e37096-84a9-4edd-a387-9127e3235ad7?#
重要点:
看文档!看文档!看文档! 文档可能会定期更新,之前的一些接入流程可能会发生变化。埋点问题、接口签名、单点登录码、单点登录回调地址参数等会发生变化