收藏
回答

downloadFile存到小程序本地缓存,iOS加载不出图片,安卓可以加载出来

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 Bug 客户端 6.7.2 2.2.0

//在onLaunch页面下载zip文件包,并存到本地,在对zip包进行解压(zip包里面是图片),那么所有图片以及zip包都存在了本地缓存的根目录。


代码如下:


onLaunch: function(obj) {

this.downloadFileFn();

},

downloadFileFn: function() {


    let url = wx.env.USER_DATA_PATH;

    wx.setStorageSync('USER_DATA_PATH', url);


    const FileSystemManager = wx.getFileSystemManager();   

 

    FileSystemManager.stat({

        path: url, //文件/目录路径

        recursive: true,

        success: function (res) {

            console.log('*******stat-成功-判断zip是否存在', url)

            let isFileSystem = "N";

            let list = res.stats;

            for (let index in list) {

                let path = list[index].path;

                if (path == 'fileSystem.zip') {

                    isFileSystem = "Y";

                }

            }

            if (isFileSystem == "N") {

                console.log('*******zip不存在,开始下载zip', url)

                wx.downloadFile({

                    url: 'https://my.chinasie.com/attcenter/api/sys/fileSystem.zip',

                    header: {

                    'content-type': 'application/json',

                    "Authorization": "Bearer "

                    },

                    success(res) {

                        console.log('*******downloadFile-成功-开始保存到本地', res)

                        if (res.statusCode === 200) {

                            FileSystemManager.saveFile({

                                tempFilePath: res.tempFilePath,

                                filePath: url + "/fileSystem.zip",

                                success: function (res) {

                                console.log('*******saveFile-保存成功-开始解压', res)

                                

                                FileSystemManager.unzip({

                                    zipFilePath: `${url}/fileSystem.zip`,

                                    targetPath: `${wx.env.USER_DATA_PATH}`,

                                    success: function (res) {

                                    console.log('-------------unzip-成功', res)

                      


                                    FileSystemManager.stat({

                                    path: url, //文件/目录路径

                                    recursive: true,

                                    success: function (res) {

                                    debugger

                                    console.log('*******stat-解压成功查看所有结果集', res)

                                    },

                                    fail: function (ex) {

                                    console.log('*******stat-失败', ex)

                                    }

                                    })

                    },

                    fail: function (ex) {

                    console.log('-------------unzip-失败', ex)

                    }

                    })


        },

    fail: function (ex) {

    console.log('*******saveFile-失败', ex)

    }

    })

}

}

})

} else {

console.log('*******zip已存在')

}

}

})


},



page页面使用如下:

获取URL,在跟在解压的图片文件名,


page.js

let url = wx.env.USER_DATA_PATH;;


this.setData({

USER_DATA_PATH:url

})



page.wxml


<image src='{{USER_DATA_PATH+"/agree.png"}}'></image>  图片名非真实的

 <image src='{{USER_DATA_PATH+"/login-banner1.jpg"}}'></image>

 <image src='{{USER_DATA_PATH+"/department.png"}}'></image>


如图:

iOS  图片读取不出来  







如图:

安卓手机  图片可以读取出来  





能否知情中尽快回复,比较着急,非常感谢。





最后一次编辑于  2018-10-11  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

1 个回答

  • 娇华
    娇华
    2018-10-11

    你好,请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2018-10-11
    赞同
    回复 4
    • 艳儿
      艳儿
      2018-10-12

      代码片段链接:wechatide://minicode/smy2E6m8733E



      iOS:版本信息和效果图bug







      安卓手机:版本信息和正确效果图展示



      2018-10-12
      回复
    • 艳儿
      艳儿
      2018-10-15

      已解决

      2018-10-15
      回复
    • Junay
      Junay
      2018-10-17回复艳儿

      小姐姐怎么解决的,能详细说一下吗?我也碰到了这个问题!!!

      2018-10-17
      回复
    • 艳儿
      艳儿
      2018-10-17回复Junay

      我这边是路径问题,usr 后面加上斜杆 /

      2018-10-17
      回复