Tôi đang cố gắng đặt mã chống vi phạm bản quyền trong ứng dụng của mình. Câu trả lời trước cho điều này (mà tôi không thể liên kết đến vì trạng thái thành viên của tôi - sucks) có thể dễ dàng bị phản đối, vì chuỗi "SignerIdentity" có thể được tìm kiếm và được thay thế bằng nhị phân bằng trình soạn thảo hex. Thay vào đó, kiểm tra tập tinSize của tập tin info.plist và so sánh nó với một giá trị tham khảo âm thanh vững chắc hơn (kể từ khi info.plist được sửa đổi ở đây và ở đó khi bẻ khóa ứng dụng). Tôi sẽ làm như thế nào? Tôi đã thử các sau đây nhưng nó có thể ghi 0.Nhận tệpSize of info.plist để ngăn vi phạm bản quyền
NSBundle *bundle = [NSBundle mainBundle];
NSDictionary *mainDictionary = [bundle infoDictionary];
NSLog(@"%d", [mainDictionary fileSize]);
Điều đó là cướp biển có thể thay đổi chuỗi "FvtareVqragvgl" đó thành một chuỗi khác và điều đó sẽ kiểm tra một khóa khác trong info.plist .. có thể sẽ không có giá trị. Thuộc tính filesize được so sánh với một int nên thật sự không có cách nào dễ dàng để tìm nó trong binary. – samvermette
Cảm ơn bạn đã trả lời! Cập nhật – samvermette
: bây giờ // \t NSDictionary * fileAttributes = [tệpManager fileAttributesAtPath: pathP traverseLink: YES]; không được dùng nữa ... sử dụng: -> ... \t NSDictionary * fileAttributes = [tệpManager attributesOfItemAtPath: pathP error: NULL]; ... thay vì – meronix