1
我在交付之前對混淆了我的Java代碼(目前正在使用ProGuard)。Java混淆:刪除異常消息
當我「反編譯」混淆的字節碼時,顯然所有的字符串都沒有被混淆。對於例外消息也是如此。這些異常消息爲讀者提供了大量的信息來理解代碼。像:
if(a == null){
throw new IllegalArgumentException("SuperSecretObject cannot be null");
}
是否有可能使用ProGuard或其他工具編譯時刪除所有異常消息字符串?
否則,你能推薦其他方法來隱藏功能上不必要的字符串嗎?
通過更改代碼行爲來刪除異常消息。 – gontard 2013-03-25 08:43:06
您可以將異常消息移動到代碼之外的文件中,但即使如此,也可以始終引用這些消息。 – 2013-03-25 08:44:08
@Sudhanshu好主意:我可以使用一個屬性,當沒有找到密鑰時返回「」。這些屬性只會在應該有異常消息的測試安裝中填充。 – Philipp 2013-03-25 08:47:03