ラヤのzipプログラム更新

1.パッケージ化されるように一緒に接続ジップとlayaairfiles.txtリソースファイル。

2.事前ロード段階、downfileダウンロードによる最初のzipパッケージおよびキャッシュディレクトリに解凍します。

3.設定BASEURL、すべてのリソースを事前ロードを開始。

4.自動的に次のNode.jsのスクリプトのために生成さlayaairfiles.txt

VaRの FSの=は、( "FS"が必要)。

VaRの cacheData = "" ;
VaRの TMP = {};
VAR totalSize = 0 ;
VAR nowTime = Date.now()。
VaRの BASEURL = "HTTPS://0.0.3/" ;
VaRの BasePathの= "./bin/" VARのfileList = fs.readdirSync(BasePathの); 
TMP [ "fileUsedSize"] = totalSize。
VAR ; iはfileList.lengthを<I ++は、I = 0 ){
     VARのファイル= のfileList [I]。
    VaRの統計= fs.statSync(BasePathの+ ファイル)。
    もし(stats.isDirectory()){ 
        readFileの(BasePathの +ファイル+ "/"、ファイル+ "/" )。
    } { 
        totalSize + = stats.size。
        TMP [BASEURL +ファイル] = {};
        VaRのデータ= TMP [BASEURL + ファイル]。
        データ[ "MD5"] = prePath + ファイル。
        データ[ "readyUrl"] = BASEURL + ファイル。
        データ[ "サイズ"] = stats.size。
        データ[ "倍"] = nowTime。
        VAR ARR = file.split( '' );
        もし([1] == "アトラス" ARR"コードする"] = "UTF8" 
        } { 
            データ[ "エンコード"] = "" ; 
        } 
    } 
} 
TMP [ "fileUsedSize"] = totalSize。
VaRの STR = JSON.stringify(TMP)。
fs.writeFileSync( './layaairfiles.txt' 、STR); 

関数readFileの(readurl、prePath){
     VARのfileList = fs.readdirSync(readurl)。
    VAR ; iはfileList.lengthを<I ++は、I = 0 ){
         VARのファイル= のfileList [I]。
        VaRの統計= fs.statSync(readurl +ファイル);
        もし(stats.isDirectory()){ 
            readFileの(readurl + "/" +ファイル+ "/"、prePath +ファイル+ "/" )。
        } { 
            totalSize + = stats.size。
            TMP [BASEURL + prePath +ファイル] = {};
            VaRのデータ= TMP [BASEURL + prePath + ファイル]。
            データ[ "MD5"] = prePath + ファイル。
            データ[ "readyUrl"] = BASEURL + prePath + ファイル。
            データ[ "サイズ"] = stats.size。
            データ[ "倍"] = nowTime。
             ARR = file.split( '' );
            もし(ARR [1] == "アトラス" ){ 
                データ[ "エンコード"] = "UTF8" 
            } { 
                データ[ "エンコード"] = "" ; 
            } 
        } 
    } 
}

キャッシュディレクトリを抽出する5.ダウンロードしたzipファイル

Laya.MiniAdpter.removeAll(); 
wx.getFileSystemManager()({解凍。
    zipFilePath:res.tempFilePath、
    TARGETPATH:laya.wx.mini.MiniFileMgr.fileNativeDir、
    成功:() => {
         この.unzipSuccess(); 
    }、
    失敗:(RES) => {
         この.unzipFail(RES); 
    } 
})。

 

 

おすすめ

転載: www.cnblogs.com/wsswlyy/p/10973653.html