400-800-9385
網站建設資訊詳細

關于微信小程序文件下(xià)載功能的(de)一些信息分(fēn)享

發表日期:2024-01-03 09:27:13   作者來(lái)源:陳應信   浏覽:1259   标簽:微信小程序    
最近做(zuò)了(le)幾個(gè)小程序,客戶的(de)需求的(de)讓用(yòng)戶在小程序裏下(xià)載文件,我就去微信開發者中心看文檔,發現有wx.downloadFile方法可(kě)供下(xià)載文件,當時(shí)覺得(de)原來(lái)下(xià)載文件原來(lái)很簡單,等閱讀清楚後才發現沒那麽簡單,甚至可(kě)以說微信小程序除了(le)能直接下(xià)載圖片以外(即使是下(xià)載圖片也(yě)要用(yòng)戶授權同意保存才能下(xià)載),其他(tā)的(de)文件一律無法下(xià)載的(de),下(xià)載圖片可(kě)以用(yòng)wx.saveImageToPhotosAlbum方法,首次調用(yòng)時(shí)會讓你授權是否同意保存,所謂的(de)wx.downloadFile方法是用(yòng)來(lái)把文件下(xià)載到小程序緩存裏,然後你不可(kě)以直接保存到手機裏,而隻能對(duì)這(zhè)個(gè)文件進行操作,例如我們用(yòng)wx.downloadFile方法下(xià)載一個(gè)zip文件,下(xià)載後可(kě)以對(duì)這(zhè)個(gè)zip文件進行解壓,獲取解壓後的(de)zip文件夾裏的(de)文件列表和(hé)文件路徑等,但這(zhè)些都沒有用(yòng),因爲用(yòng)戶需要的(de)是把zip文件下(xià)載到手機裏,而不是在小程序裏去查看zip裏面的(de)内容,所以如果要實現下(xià)載的(de)功能,如下(xià)圖所示:

複制裢接

我們隻能讓用(yòng)戶點擊下(xià)載時(shí),可(kě)以用(yòng) wx.getClipboardData方法複制文件的(de)鏈接地址,然後把複制的(de)文件地址粘貼到手機浏覽器裏打開,再下(xià)載文件,如下(xià)圖所示:
 

浏覽器下(xià)載

雖然微信小程序不支持直接的(de)下(xià)載,但卻支持多(duō)種常見的(de)文件類型可(kě)以用(yòng)wx.openDocument方法直接預覽,如果最常見的(de)pdf,docx,excel等文件,都是可(kě)以直接打開的(de),并且能兼容IOS和(hé)安卓的(de)版本,唯一的(de)區(qū)别是安卓在預覽時(shí),點擊右上角的(de)...可(kě)以直接将文件保存到手機裏,如下(xià)圖所示:

PDF下(xià)載

而IOS手機也(yě)可(kě)以預覽,但無法下(xià)載保存到手機裏。
總結一下(xià):如果是讓用(yòng)戶下(xià)載圖片,可(kě)以使用(yòng)wx.saveImageToPhotosAlbum方法讓用(yòng)戶直接将圖片保存到手機裏,如果是一些常用(yòng)的(de)文件,可(kě)以用(yòng)wx.openDocument方法打開文件預覽,如果是一些特殊的(de)文件類型,如果zip,rar等文件,建議(yì)使用(yòng)複制文件鏈接到浏覽打開下(xià)載。
如沒特殊注明(míng),文章(zhāng)均爲方維網絡原創,轉載請注明(míng)來(lái)自