bool CCImage::initWithImageFileThreadSafe(const char *fullpath, EImageFormat imageType)
{
bool bRet = false;
unsigned long nSize = 0;
#if 0
CCFileUtilsAndroid *fileUitls = (CCFileUtilsAndroid*)CCFileUtils::sharedFileUtils();
unsigned char *pBuffer = fileUitls->getFileDataForAsync(fullpath, "rb", &nSize);
#else
//unsigned char *pBuffer = CCFileUtils::sharedFileUtils()->getFileData(fullpath, "rb", &nSize);
unsigned char* pBuffer = CZHelperFunc::getFileData(fullpath, "rb", &nSize);
#endif
```
这里注释了android下线程安全的文件读取getFileDataForAsync会有问题,getFileData会导致多线程共有一个unzFile,具体可见getFileDataForAsync函数,多线程使用.
这是2.x的代码吧。下面的代码是为了解密资源而修改的,确实没注意到Android上异步加载时的问题。谢谢反馈!
恩,2.x的代码. 加密建议做在底层getfiledata,这样多处插点稍微有点不是很好。