您可能會阻止noobish餅乾從發現代碼中的引用「SignerIdentity」通過應用ROT13或類似的簡單遮蔽算法 http://en.wikipedia.org/wiki/ROT13
應用ROT13後,「SignerIdentity」將變成「FvtareVqragvgl」。
無論如何,回答你的問題(你怎麼弄的Info.plist文件的大小):
NSBundle *bundle = [NSBundle mainBundle];
NSString* bundlePath = [bundle bundlePath];
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString* path = [NSString stringWithFormat:@"%@/Info.plist", bundlePath ];
NSDictionary *fileAttributes = [fileManager attributesOfItemAtPath:path
error:NULL];
if (fileAttributes != nil) {
NSNumber *fileSize;
if (fileSize = [fileAttributes objectForKey:NSFileSize]) {
NSLog(@"File size: %qi\n", [fileSize unsignedLongLongValue]);
}
}
還要記住的是,Info.plist
在Xcode項目的大小(以字節爲單位)目錄和該軟件包內的Info.plist
可能有所不同。您可能想要構建遊戲一次,然後查看<your app bundle.app>/Info.plist
的大小,然後更新您的防盜代碼。
事情是海盜可以改變「FvtareVqragvgl」字符串到其他東西,這將檢查info.plist中的另一個關鍵字,可能會爲空。 filesize屬性與int進行比較,因此在二進制文件中找不到它。 – samvermette 2009-05-24 17:38:43
謝謝你的答案! – samvermette 2009-05-26 05:24:26