狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

黑客破譯android開發代碼真就那么簡單?

admin
2014年11月24日 23:52 本文熱度 5618
很多程序員辛辛苦苦開發出的android開發代碼,很容易就被黑客翻譯了。

Google似乎也發現了這個問題,從SDK2.3開始我們可以看到在android-sdk-windows\tools\下面多了一個proguard文件夾


proguard是一個java代碼混淆的工具,通過proguard,別人即使反編譯你的apk包,也只會看到一些讓人很難看懂的代碼,從而達到保護代碼的作用。


在工程的"default.properties"中添加這樣一句話“proguard.config=proguard.cfg”


打包簽名后的.apk就是混淆的,其實我們只要做一步就可以了就是在"default.properties"中添加這樣一句話“proguard.config=proguard.cfg”就可以了。


如果想要更加復雜地混淆代碼,可以詳細地對該文件進行配置.


由于蘋果 開發是Android虛擬機加載的,它有一定的規范,加密apk后Dalvik無法識別apk了。完全避免是不可能的,總有人能夠破解你的代碼。但是有幾種


方式來提高被反編譯取代碼的難度:


1 關鍵ipad開發代碼使用jni調用本地代碼,用c或者c++編寫,因此相對比較難于反編譯


2 混淆java代碼。混淆是不改變代碼邏輯的情況下,增加無用代碼,或者重命名,使反編譯后的源代碼難于看懂。


網上開源的蘋果 開發代碼混淆工具較多,一般是用ant的方式來編譯的


-injars androidtest.jar【jar包所在地址】


-outjars out【輸出地址】


-libraryjars 'D:\android-sdk-windows\platforms\android-9\android.jar' 【引用的庫的jar,用于解析injars所指定的jar類】


-optimizationpasses 5


-dontusemixedcaseclassnames 【混淆時蘋果 開發不會產生形形色色的類名 】


-dontskipnonpubliclibraryclasses 【指定不去忽略非公共的庫類。 】


-dontpreverify 【不預校驗】


-verbose


-optimizations !code/simplification/www.lekolite.cn/*,!class/merging/* 【優化】


-keep public class * extends android.app.Activity  【不進行混淆保持原樣】


-keep public class * extends android.app.Application


-keep public class * extends android.app.Service


-keep public class * extends android.content.BroadcastReceiver


-keep public class * extends android.content.ContentProvider


-keep public class * extends android.app.backup.BackupAgentHelper


-keep public class * extends android.preference.Preference


-keep public class com.android.vending.licensing.ILicensingService


-keep public abstract interface com.asqw.android.Listener{


public protected ; 【所有方法不進行混淆】


}


-keep public class com.asqw.android{


public void Start(java.lang.String); 【對該ipad開發方法不進行混淆】


}


-keepclasseswithmembernames class * { 【保護指定的類和類的成員的名稱,如果所有指定的類成員出席(在壓縮步驟之后)】


native ;


}


-keepclasseswithmembers class * { 【保護蘋果 開發指定的類和類的成員,但條件是所有指定的類和類成員是要存在。】


public (android.content.Context, android.util.AttributeSet);


}


-keepclasseswithmembers class * {


public (android.content.Context, android.util.AttributeSet, int);


}


-keepclassmembers class * extends android.app.Activity {【保護指定ipad開發類的成員,如果此類受到保護他們會保護的更好 】


public void *(android.view.View);


}


-keepclassmembers enum * {


public static **[] values();


public static ** valueOf(java.lang.String);


}


-keep class * implements android.os.Parcelable {【保護指定的類文件和類的成員】


public static final android.os.Parcelable$Creator *;


}


以上問題可能不能百分之百的對黑客的反向破譯起到阻隔作用,但毫無疑問,效果也是顯著的.


該文章在 2014/11/24 23:52:25 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved