新青年
新青年
  • 发布:2022-01-27 11:17
  • 更新:2023-05-08 16:32
  • 阅读:895

【报Bug】uni.previewImage预览图片,安卓端app会进应用生命周期onHide钩子

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 10 专业版 21H2

HBuilderX类型: 正式

HBuilderX版本号: 3.3.5

手机系统: Android

手机系统版本号: Android 9.0

手机厂商: 华为

手机机型: 荣耀9x Pro

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
// 预览图片  
        uni.previewImage({  
            urls: res.tempFilePaths,  
            longPressActions: {  
                itemList: ['发送给朋友', '保存图片', '收藏'],  
                success: function(data) {  
                    console.log('选中了第' + (data.tapIndex + 1) + '个按钮,第' + (data.index + 1) + '张图片');  
                },  
                fail: function(err) {  
                    console.log(err.errMsg);  
                }  
            }  
        });

操作步骤:

在安卓端手机,调用uni.previewImage方法预览图片

预期结果:

预览图片,不应该触发应用的onHide生命周期钩子

实际结果:

会触发应用的onHide生命周期钩子

bug描述:

uni.previewImage预览图片,安卓端app会进应用生命周期onHide钩子,官方文档写的是:

onHide 当 uni-app 从前台进入后台

预览图片难道就是应用从前台进入后台了吗?有点说不通,另外苹果端预览图片就正常呀

bug复现在荣耀9x Pro 和一台华为P30(鸿蒙2.0系统)都会复现此bug

2022-01-27 11:17 负责人:DCloud_App_Array 分享
已邀请:
makeit

makeit - it

我也遇到了,不知道是不是合理的

  • 新青年 (作者)

    肯定不合理呀,我的onHide里面写的有业务逻辑,现在预览个图片就触发了这个逻辑,不是想要的结果呀,

    再说了,苹果端预览图片就没有触发onHide钩子,期待官方排查一下

    2022-01-27 11:49

DCloud_App_Array

DCloud_App_Array

这是Android平台特性引起的差异,如果确实在页面onHide中需要处理一些逻辑,建议在调用预览图片加状态控制。

1***@qq.com

1***@qq.com

关键是它还会触发app.vue生命周期函数

4***@qq.com

4***@qq.com

这个问题还未修复?

zmm2113V

zmm2113V - 热爱前端

还没解决呢,做了个自定义longPressActions触发的事件只有关闭预览时才能执行太恶心了。

要回复问题请先登录注册