今天項目接近收尾階段,開始對項目的資源進行整合打包,并對其進行緩存!但還是讓我遇見一些坑!
成都創(chuàng)新互聯(lián)公司成立于2013年,先為任丘等服務(wù)建站,任丘等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為任丘企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。第一個坑是,圖片都打包成plist,在項目里有些圖片提示找不到。log打印如下信息
Get data from file(level_lives.png) failed, error code is 2
我就蛋疼了,后來看了下找不到的圖片都是因為創(chuàng)建的精靈,改變紋理用到setTexture,getTexture相關(guān)的接口。猜測是這里出了問題,把這些接口改成setSpriteFrame,getSpriteFrame之類的,就沒問題了!
因為我緩存都是plis文件,看了下Sprite::create里面的代碼,會在創(chuàng)建精靈的時候調(diào)用的下面這段代碼:
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(filename);
所以只有create創(chuàng)建的精靈或者自己用TextureCache加入緩存,改變紋理才能調(diào)用setTexture,getTexture相關(guān)的接口。
用SpriteFrameCache加入緩存的,改變紋理只能調(diào)用setSpriteFrame,getSpriteFrame之類的。
第二坑是發(fā)現(xiàn)音樂和音效其實不用預(yù)加載?。。?!去看引擎代碼,發(fā)現(xiàn)preloadBackgroundMusic是空的。。。。再看preloadEffect是有內(nèi)容的,但在playEffect時候會調(diào)用preloadEffect。。。
緩存資源可以根據(jù)界面,分批加載需要顯示的資源?。。。?!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。