Chúng tôi có cùng một loại nhu cầu (đơn giản obfuscation, cần gỡ lỗi sau) và chúng tôi sử dụng ProGuard. Nó là một ứng dụng Java, có thể được tích hợp trong một nhiệm vụ Ant.
Nó có thể làm được nhiều thứ, nhưng nó cũng hoàn toàn có thể điều chỉnh được. Vì vậy, bạn có thể giữ cho obfuscation của bạn đơn giản. Một trong các tùy chọn là tạo ra một "Bảng tương ứng biểu tượng", cho phép bạn truy xuất lại mã không bị làm mờ từ mã bị xáo trộn. (nó theo dõi rằng biến xyz trong lớp qksdnqd là trong thực tế myCuteVarName trong lớp MeaningfulClassName)
Edit: Obfuscation có thể phức tạp. Một số ví dụ:
- Bạn không thể thay đổi tên của phương thức chính.
- Bạn có sử dụng trình nạp lớp không? Nó vẫn có thể lấy lại lớp học sau khi obfuscation?
- Điều gì về bản đồ ORM của bạn? Bối cảnh mùa xuân của bạn? (Nếu có)
Edit2: Bạn cũng có thể thấy:
Nguồn
2009-09-03 07:50:31
Vâng, tôi biết về bảng SC. Nhưng tôi và nhóm của tôi không phải là rất kinh nghiệm, người có thể dễ dàng gỡ lỗi và thay đổi mã bị xáo trộn ngay cả khi sử dụng bảng :) Vì vậy, tôi chỉ tìm kiếm một công cụ cho phép tôi gỡ lỗi mã minh bạch. – Vitaly
Bạn không phải là guru, bạn cung cấp các bảng và jar obfuscated cho các ứng dụng, và họ trở thành có thể đọc được một lần nữa (trừ bình luận). Ah ... nhưng tôi không nghĩ rằng bạn có thể "hotswaping" với quá trình này (nó là loại bỏ và thay thế tất cả các jar) –
Có thể tôi không hiểu điều gì đó. Tôi sẽ có thể "từng bước" gỡ lỗi từ xa mã obfuscated và xem mã "bình thường" trong cùng một thời gian trong một số loại trình gỡ lỗi (mà không có bất kỳ hành động bổ sung như nhìn vào bảng, tung ra các ứng dụng khác và vv)? – Vitaly