收藏
回答

求助:微信小程序下载pdf文件下载问题

问题模块
API和组件

小程序开发需要下载pdf文件,使用小程序的 wx.downloadFile接口和 wx.saveFile接口,然后使用 wx.openDocument接口打开文档。

在开发工具调试是没有问题的,下载的是pdf格式的文件,但是在android手机上预览时,下载的是htm格式的文件,然后打开时,报找不到文件;在iphone上是没有问题的,可以正确识别pdf格式文件。


代码:



PC调试结果:



Android手机调试结果:



最后一次编辑于  2017-03-30  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

4 个回答

  • 林超
    林超
    2017-03-30

    你好 请给下 Android 手机型号以及系统版本

    2017-03-30
    赞同
    回复
  • 左左💯
    左左💯
    2017-03-31

    测试手机一个是小米5,系统是Android7.0;另一个是VIVO X9 Plus,系统式Android6.0.1


    2017-03-31
    赞同
    回复
  • 左左💯
    左左💯
    2017-04-06

    伟大的微信官方社区啊,连个问题都没有人回答吗?这都多少天了,官方起码得有一个指导意见什么的吧。

    2017-04-06
    赞同
    回复
  • log琥珀
    log琥珀
    2017-08-14

    @林超

    我使用的开发工具尝试下载pdf文件,遇到类似的问题

    var urlStr ="http://example.com/download/pdfFromUrl?id=1234";//mock
        const downloadTask=wx.downloadFile({
          url: urlStr,
          header: { "chartset": "utf-8" },
          success: function (res) {
            var filePath = res.tempFilePath;
            wx.openDocument({
              filePath: filePath,
              success: function (res) {
                console.log("打开文档成功!");
              },fail:function(err){
                console.log(err);
              }
            });
          },
          fail: function (err) {
            console.log(err);
            App.wxShowToast({
              msg: '打开失败!',
              isSuccess: false
            })
          }
        })
        downloadTask.onProgressUpdate((res) => {
        console.log('下载进度', res.progress)
        console.log('已经下载的数据长度', res.totalBytesWritten)
        console.log('预期需要下载的数据总长度', res.totalBytesExpectedToWrite)

    下载进度是有的,但是打开文档的时候执行的失败的回调打印日志是

    openDocument:fail filetype not supported 想问问处理的思路

    2017-08-14
    赞同
    回复