g***@tocs.cn
g***@tocs.cn
  • 发布:2020-10-25 14:08
  • 更新:2020-10-27 17:25
  • 阅读:889

截图被uniapp的应用自动删除【报Bug】

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: windows10

HBuilderX类型: 正式

HBuilderX版本号: 2.9.5

手机系统: Android

手机系统版本号: Android 10

手机厂商: 华为

手机机型: 华为

页面类型: vue

打包方式: 云端

项目创建方式: HBuilderX

App下载地址或H5⽹址: www.gaibang.ren

操作步骤:

截图被app自动删除是咋回事?

预期结果:

不要被删除

实际结果:

截图被app自动删除是咋回事?

bug描述:

截图被app自动删除是咋回事?

2020-10-25 14:08 负责人:DCloud_uniAD_HDX 分享
已邀请:
风云杭州

风云杭州

这个问题我在论坛上反馈多次了。。我们小时尚app也遇到这个问题。
部分华为手机用户和oppo手机用户有反馈这个问题。
希望官方尽快解决这个问题哦,太影响用户体验了

DCloud_Android_ST

DCloud_Android_ST

提供一下示例demo

  • g***@tocs.cn (作者)

    在华为手机上,最新版hb打包的基座,上传图片的时候 uni.chooseImage函数几乎必现,会自动删除所选择的图片

    2020-10-26 17:09

  • 风云杭州

    回复 g***@tocs.cn: 所有华为手机都遇到删除图片都问题?

    2020-10-26 21:18

  • chenli

    回复 g***@tocs.cn: 提供可复现的华为手机型号及系统版本,方便他人排查。

    2020-10-27 08:55

  • wangbaochen

    我也是用了最新版hb打包, 客户才反馈的图片被自动删除的问题. 只华为手机

    2020-10-28 09:24

DCloud_Android_ST

DCloud_Android_ST

我用HX2.9.5 基座操作 uni.chooseImage 并没有删除图片的情况 提供一下可复现问题的demo (说那么多我这边不能复现问题。你反馈再多也无意义!你说是不是) 赶紧给demo让我们复现问题吧!!!

  • 风云杭州

    有用户反馈 华为nova5 有遇到这个问题

    2020-10-27 18:24

  • DCloud_Android_ST

    要测试项目!! 下载你的apk我都不知道你怎么写的代码 没办法确定问题。要项目主要还是看你们的代码怎么调用处理的。

    2020-10-27 19:10

  • DCloud_Android_ST

    回复 DCloud_Android_ST: 问题可能与chooseImage 并没有关系 。看看是不是调用了图片压缩了

    2020-10-27 19:13

  • wangbaochen

    我的客户也遇到了同样的问题, 华为手机mate30, nv7. 我现在正在返回HBuilderX 的早期版本2.8重新打包app 然后发给客户试用。

    2020-10-28 09:22

  • wangbaochen

    上传图片后,调用了压缩图片的 功能. HBuilderX早期的版本,未出现删除图片的功能

    2020-10-28 09:23

  • DCloud_Android_ST

    回复 wangbaochen: 看下图片压缩代码是不是把src与dst同一个地址了

    2020-10-28 10:30

  • wangbaochen

    刚才,客户是这样反馈的. 如果自己手机拍照,存到相册里, 上传图片正常. 若是通过微信接收的图片,保存到相册中, 然后再上传图片,就提示被删除. . . 图片压缩代码src和dst是同一个地址

    2020-10-28 10:42

  • DCloud_Android_ST

    问题就在src和dst是同一个地址 不能同一个 在android10开始 如果你的dst地址是系统相册目录 当使用图片压缩时会对dst目录拷贝。但是src已存在就会进行图片覆盖操作。就出现删除图片的行为。就会提示的 所以需要把dst目录改为应用沙盒目录

    2020-10-28 10:48

  • 风云杭州

    回复 DCloud_Android_ST: src和dst是同一个地址,那应该就是这个问题造成的。应用沙盒目录具体是指啥

    2020-10-28 11:04

  • 风云杭州

    //压缩  
    plus.zip.compressImage({
    src:item,
    dst:item,
    overwrite:true,
    quality:50,
    width:'1080px',
    height:'auto',
    format:'jpg',
    },
    function(res){
    //console.log("newimage size:"+res.size);
    console.log("newpath:"+res.target);
    //console.log("newwidth:"+res.width);
    //console.log("newheight:"+res.height);
    }
    );

    2020-10-28 11:06

  • DCloud_Android_ST

    沙盒目录说明 https://ask.dcloud.net.cn/article/36199

    2020-10-28 11:07

  • 风云杭州

    回复 DCloud_Android_ST: 收到,感谢

    2020-10-28 11:14

  • 风云杭州

    回复 DCloud_Android_ST: 能够做成 chooseImage的时候,默认生成的图片的临时文件地址就放到应用沙盒目录,而不是现在的系统公共目录呀?

    2020-10-28 11:19

  • DCloud_Android_ST

    回复 风云杭州: chooseImage不会这样操作

    2020-10-28 11:23

  • 风云杭州

    回复 DCloud_Android_ST: 苹果手机也是有应用沙盒的概念吗?还是压缩的时候针对安卓手机和苹果手机进行区分处理了?苹果手机的dst和src一致,安卓的话dst的目录就改成应用沙盒的目录?

    2020-10-28 11:28

  • DCloud_Android_ST

    回复 风云杭州: ios也有 plus.io.PRIVATE_DOC都是两个平台公用的

    2020-10-28 11:37

  • g***@tocs.cn (作者)

    回复 DCloud_Android_ST: 所以是压缩导致的吗,我们上传图片也应用了压缩。但关键是HB2.8.12正常,升级到最新版HB就不正常了,确定不是HB最新版本身有问题么?

    2020-10-28 12:14

  • g***@tocs.cn (作者)

    反馈的用户中有的不是安卓10

    2020-10-28 12:14

  • DCloud_Android_ST

    回复 g***@tocs.cn: 你可以确定一下用户手机系统版本 然后修改一下压缩逻辑看看是否还可以复现问题

    2020-10-28 12:19

  • 风云杭州

    回复 g***@tocs.cn: 今天我这边有反馈的用户是安卓9的,确实不仅仅是安卓10用户有这个反馈

    2020-10-31 16:46

  • 风云杭州

    回复 DCloud_Android_ST: 是不是 压缩的时候 overwrite 设为false就可以了? 我看设为false之后,是生成了一个新的图片,也就是说不会去删除原来的图片了,这样应该就不会收到提醒了吧?

    2020-10-31 19:24

  • 风云杭州

    回复 DCloud_Android_ST: 请教怎么把dst目录改为应用沙盒目录?

    2020-10-31 20:34

  • 风云杭州

    回复 DCloud_Android_ST: oldpath:_doc/uniapp_temp_1604146592242/compressed/1604146743650_1604029118-IMG_0624.PNG at pages/note-add/note-add.nvue:237

    20:19:40.571 newpath:file:///var/mobile/Containers/Data/Application/B37C4E03-498C-45A8-859D-60658C1C984E/Documents/Pandora/apps/32FE08C07D915A1EBD52CD26B1687109/doc/uniapp_temp_1604146592242/compressed/1604146743650_1604029118-IMG_0624(1).PNG


    这个是属于应用沙盒目录吗

    2020-10-31 20:39

  • 风云杭州

    已经搞定,苹果本身就是在应用沙盒目录处理的,只要针对安卓进行处理就好了

    2020-10-31 21:11

  • g***@tocs.cn (作者)

    回复 风云杭州: 怎么处理的啊,大佬带带呀

    2020-11-02 15:16

  • 风云杭州

    回复 g***@tocs.cn:


    //压缩图片  
    tempFilePaths.forEach((item) =>{
    console.log("oldpath:"+item);
    let imagename=Date.now();
    let dst="_doc/"+imagename+".jpg";
    console.log("dst:"+dst);
    plus.zip.compressImage({
    src:item,
    dst:dst,
    overwrite:true,
    quality:50,
    width:'1080px',
    height:'auto',
    format:'jpg',
    },
    (res) =>{
    //console.log("newimage size:"+res.size);
    console.log("newpath:"+res.target);
    this.imageList.push(res.target);
    //console.log("imagelist0:"+this.imageList[0]);
    //console.log("newheight:"+res.height);
    }
    );
    });

    2020-11-02 16:56

  • g***@tocs.cn (作者)

    回复 风云杭州: 谢谢大佬

    2020-11-02 17:47

该问题目前已经被锁定, 无法添加新回复