1、兩種方式,一種開發(fā)工具eclipse,還有就是用apktool工具。 I、只要Run As Android Application 過,到工作目錄的bin文件夾下就能找到與項(xiàng)目同名的apk文件。
創(chuàng)新互聯(lián)專業(yè)IDC數(shù)據(jù)服務(wù)器托管提供商,專業(yè)提供成都服務(wù)器托管,服務(wù)器租用,成都服務(wù)器托管,成都服務(wù)器托管,成都多線服務(wù)器托管等服務(wù)器托管服務(wù)。
2、運(yùn)行apktool.bat d xxx.apk,把a(bǔ)pk反編譯成smali 如果想要進(jìn)一步查看源碼,可下載smali2java 使用smali文件的文件名進(jìn)行分析,如果存在1個(gè)或1個(gè)以上的資源類的smali文件,就可以證明該apk沒有被混淆過。
3、對(duì)代碼進(jìn)行優(yōu)化(使用adt插件導(dǎo)出的apk,還進(jìn)行zipalign優(yōu)化)缺省情況下,proguard會(huì)混淆所有代碼,但是下面幾種情況是不能改變java元素的名稱,否則就會(huì)導(dǎo)致程序出錯(cuò)。
4、代碼編譯成class文件代碼打成jar包混淆jar包用jar包生成classes.dexresources.ap_生成apk以及簽名只不過工具幫我們一次性全做了,如果你要寫批處理來做,就要按上面的步驟來做了。
5、apk混淆打包 如果要對(duì)apk進(jìn)行混淆,你要先告知gradle這個(gè)app需要混淆,并告知其混淆規(guī)則。告知gradle需要混淆的代碼 在Project/app/build.gradle中把minifyEnabled設(shè)置為true,表示說打包時(shí)需要執(zhí)行混淆操作。
6、ProGuard來進(jìn)行混淆打包,大大的優(yōu)化Apk包的大小。但是注意ProGuard對(duì)文件路徑的名名很有講究,不支持括號(hào),也不支持空格。
1、代碼混淆有兩種重要功能。其一,混淆代碼。其二,優(yōu)化代碼。進(jìn)行代碼混淆的程序被稱為代碼混淆器(混淆工具)。進(jìn)行代碼混淆的意義主要在于對(duì)代碼進(jìn)行一定程度的加密。
2、第一個(gè)文件是描述文件,第二個(gè)文件是配置文件。如果要實(shí)現(xiàn)代碼混淆,需要修改第二個(gè)文件。打開第二個(gè)文件,如下:其中紅線部分說,如果你要實(shí)現(xiàn)代碼混淆,你需要把下面一行給反注釋掉。
3、特定類的public函數(shù)不做實(shí)際的事情,只做簡(jiǎn)單處理后調(diào)用private函數(shù)。proguard對(duì)會(huì)對(duì)一些特定類的public函數(shù)不做混淆,以便被AndroidManifest.xml和各種layout引用。
4、shrinking, 所以minifyEnabled也必須打開。proguard-rules.pro 為混淆規(guī)則文件,放置在Module根目錄下。配置完后你就可以在Android studio中 Build-Generate Signed APK... 生成代簽名和混淆的APK文件了。
1、retrace.bat腳本(Window)或retrace.sh腳本(Linux,Mac OS X)可以將一個(gè)被混淆過的堆棧跟蹤信息還原成一個(gè)可讀的信息。它位于sdk_root/tools/proguard文件夾中。
2、通過設(shè)置一些替換規(guī)則,使java文件中指定的代碼類的名字或者成員名字變?yōu)闆]有任何意義的字母,然后編譯成class文件的過程。已經(jīng)混淆過的android代碼反編譯出來的都是一些沒有任何意義的名字,是很難讀懂的。沒有好的辦法。
3、代碼可以混淆 ,文字 是 字符串 常量 ,無法混淆 。你可以先把文字加密后,再定義在代碼里面 。然后使用的時(shí)候,先解密一下。
4、一般如果DEBUG時(shí)能用,那混淆和簽名后應(yīng)該也是能用的,多半還是有哪里沒有搞好,比如可以試一下在工程屬性里的Java Build Path中的Order and Export里把你的JAR選擇上再試一下。
5、首先,打開手機(jī)。其次,找到文件目錄并打開。然后,從sdk目錄中找到tools文件中的proguard文件。最后,打開proguard文件找到proguard-android.txt文件即可打開安卓混淆文件。