uni-app hbuildx 打包wap2app后无法长按保存图片

uni-app hbuildx 打包wap2app后无法长按保存图片

项目属性 信息
产品分类 uniapp/App
PC开发环境 Windows
PC操作系统版本 win10
HBuilderX类型 正式
HBuilderX版本 3.3.13
手机系统 Android
手机系统版本 Android 10
手机厂商 华为
手机机型 华为
页面类型 vue
vue版本 vue2
打包方式 云端
项目创建方式 HBuilderX

操作步骤:

  • 打开APP

预期结果:

  • 可以长按保存

实际结果:

  • 不能长按保存

bug描述:

  • h5网站在浏览器打开可以长按保存图片,hbuildx 打包wap2app后,无法长按保存图片

更多关于uni-app hbuildx 打包wap2app后无法长按保存图片的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

更多关于uni-app hbuildx 打包wap2app后无法长按保存图片的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在 uni-app 中使用 HBuilderX 打包 Wap2App 后,如果遇到无法长按保存图片的问题,可能是由于以下原因导致的。以下是一些可能的解决方案:

1. 检查图片的 img 标签

确保图片是通过 <img> 标签加载的,而不是通过背景图(background-image)或其他方式加载的。长按保存图片的功能通常只对 <img> 标签有效。

<img src="your-image-url" alt="Image" />

2. 检查图片的 src 属性

确保图片的 src 属性是一个有效的 URL,而不是 base64 编码的图片数据。某些情况下,base64 编码的图片可能无法被长按保存。

3. 检查图片的 draggable 属性

确保图片的 draggable 属性没有被设置为 false,否则可能会影响长按保存功能。

<img src="your-image-url" alt="Image" draggable="true" />

4. 检查 CSS 样式

确保没有 CSS 样式阻止了用户与图片的交互。例如,pointer-events: none; 这样的样式会阻止用户与图片的交互,包括长按保存。

5. 检查 Wap2App 的配置

在 Wap2App 的配置中,确保没有禁用图片的长按保存功能。你可以在 manifest.json 或相关配置文件中检查是否有相关的设置。

6. 使用 @longpress 事件

如果上述方法都无法解决问题,你可以尝试使用 @longpress 事件来手动实现长按保存图片的功能。

<template>
  <img src="your-image-url" alt="Image" @longpress="saveImage" />
</template>

<script>
export default {
  methods: {
    saveImage() {
      // 在这里实现保存图片的逻辑
      // 例如,使用 uni.downloadFile 和 uni.saveImageToPhotosAlbum
      uni.downloadFile({
        url: 'your-image-url',
        success: (res) => {
          if (res.statusCode === 200) {
            uni.saveImageToPhotosAlbum({
              filePath: res.tempFilePath,
              success: () => {
                uni.showToast({
                  title: '图片保存成功',
                  icon: 'success'
                });
              },
              fail: () => {
                uni.showToast({
                  title: '图片保存失败',
                  icon: 'none'
                });
              }
            });
          }
        }
      });
    }
  }
}
</script>

7. 检查权限

确保应用有保存图片到相册的权限。在 manifest.json 中,确保已经声明了 WRITE_EXTERNAL_STORAGE 权限。

{
  "permissions": {
    "android": [
      "WRITE_EXTERNAL_STORAGE"
    ]
  }
}
回到顶部