在xcode模擬器上運行完全沒有問題,一到真機上,打開一個特定的功能時,就會閃退,最後找到每次都是在CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("xxx.plist")處閃退,剛開始以為是內存問題,但後來用工具檢測,發現閃退的時候內存使用率並不是最高的,這真的讓我迷惑了,求大神給予解答,無限感激!!!
如果是資源plist加載時閃退,有以下幾種可能性:
1,文件名錯誤,或路徑錯誤。因為XCode工程引入資源時,采用的是何種引用方式你沒說,是復制,還是引用,一般來說正確的做法是把資源文件手動復制到項目資源目錄下,然後采用引用的方式導入資源。還有,就是要注意文件名的大小寫是不是錯了。
2,索引重復。如果先前你加載了一個plist文件,裡邊有一個叫abc.png的文件,你又加載另一個plist文件,裡邊也包含abc.png文件,這樣會導致閃退。
3,plist對應的紋理或包含的紋理尺寸過大。如果plist對應的紋理圖片,寬或高超過2048,則必然引起花屏或閃退等問題。
因為你問題描述的不清楚,所以也只能靠猜,希望有所幫助