我使用MD5算法为我在模拟器和ipad上测试的同一个image..so创建了唯一的字符串/名称。
我使用safari在模拟器中下载了一个映像,并为that.it创建了that.it字符串,在simulator.in模拟器中运行良好,它总是为相同的图像创建相同的字符串。
然后,我通过safari从同一个站点/url下载了相同的图片到ipad。并为此创建了一个MD5。有一个problem.the,MD5,is,different.can,任何一个都能告诉我确切的问题。
是模拟器和ipad在下载时以不同的大小保存相同的图像。
我用了密码:
MyExtensions.h
@interface NSData (MyExtensions)
- (NSString*)md5;
@endMyExtensions.m
#import "MyExtensions.h"
#import <CommonCrypto/CommonDigest.h> // Need to import for CC_MD5 access
@implementation NSData (MyExtensions)
- (NSString*)md5
{
unsigned char result[16];
CC_MD5( self.bytes, self.length, result ); // This is the md5 call
return [NSString stringWithFormat:
@"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
result[0], result[1], result[2], result[3],
result[4], result[5], result[6], result[7],
result[8], result[9], result[10], result[11],
result[12], result[13], result[14], result[15]
];
}
@end
-(NSString *) md5Image:(UIImage *)img {
return [UIImagePNGRepresentation(img) md5];
}发布于 2011-07-04 20:20:43
请查看answer to this post以获得可能的解释。
如您所见,CC_MD5实现可以包含一些数据类型,这些数据类型在32位或64位操作系统上占用不同的字节数。这可以解释在模拟器(Mac )或设备(iOS)上散列的区别。
https://stackoverflow.com/questions/6575436
复制相似问题