隨着微信小遊戲平臺的普及和完善,越來越多的遊戲開發者加入到微信小遊戲開發隊伍中,很多公司開發者一個團隊就開發了幾十款遊戲。
目前,微信小遊戲同質化嚴重,大多是一套代碼,換換皮膚就變成了一款新遊戲。更有甚者,有些開發者直接反編譯別人的遊戲包進行簡單修改,變成自己的產品申請上架。嚴重損害著作權所有人的利益和平臺規則。
爲了遏制和打擊這種現象,微信小遊戲平臺有一個環節是機審,審查代碼包的相似度,如果代碼包相似度超過一定的比例就會被判定爲“代碼包侵權”,審覈不予通過。
這本身是好事,但是卻產生了大量“誤殺”行爲。很多公司開發團隊用同一套自己研發的遊戲引擎開發出不同的產品,申請上線的時候會判定爲“侵權”。這就鬱悶了,自己侵權自己。
雖然微信官方說可以申訴,但是時間不受控制,這不是一個上策。更好的方式是修改代碼,混淆代碼,讓其看起來和別的項目不像,不要觸發微信代碼機審的“黑機關”。
好了,廢話了半天,該上菜了!希望各位讀者收穫滿滿!
混淆代碼的思路:
1、修改所有代碼Class 類名稱不要重複
2、修改全部全局屬性、和至少 1/3的方法名稱不要重複(這部分可以寫程序去批量改)
3、打亂那些基類、工具類裏面的方法順序, 舉例 Class A裏面有 Function B、C、D,在不同項目裏面改亂順序,項目1裏面的 Class A中順序是B、D、C;項目2裏面的 Class A中順序是D、C、B;
4、如果定義了 package包名,包名也改掉;
5、每個類裏面 隨機插入一些廢代碼(注意,不是直接複製獨立的廢代碼文件到項目中,這種方式無效)
6、如果是白鷺引擎,記把exml裏面的代碼也改改,各種重用的組件比如按鈕、Class名稱和文件名都改一下。
7、如果是 Laya 2.0項目,class 前面 不要用default 定義。