quick-cocos2d-x 2.2.3 rc版本中 crypto.md5file() 的C++实现在ANDROID上有BUG
原来的版本是用fopen打开文件的,如果要从ANDROID的APK中取文件,直接就洗白了
修改如下
void CCCrypto::MD5File(const char* path, unsigned char* output) { unsigned long len = 0; //to make sure we can get data of files easily from ios,android,pc etc. //we use CCFileUtils::sharedFileUtils()->getFileData unsigned char* pData = CCFileUtils::sharedFileUtils()->getFileData(path, "r", &len); if (pData == NULL || len == 0){ CCLOG("CCCrypto::MD5File() can't open file %s", path); return; } MD5_CTX ctx; MD5_Init(&ctx); MD5_Update(&ctx, pData, len); MD5_Final(output, &ctx); //delete data as CCFileUtils::sharedFileUtils()->getFileData claimed. if (pData != NULL) delete[] pData; }
作者:麒麟子
出处:http://www.cnblogs.com/qilinzi/
蛮牛专栏:麒麟子
简介:麒麟子,编程15年,科技创始人,技术作家。
09年进入游戏行业,16年创立成都幼麟科技有限公司。十年从业经验练就了游戏全栈技能,目前专注于手机游戏领域。
版权声明:本文版权归作者和博客园共有,欢迎转载。转载必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。