android包混淆 android混淆后怎么反編譯

如何混淆android工程打成的jar包

1、代碼編譯成class文件代碼打成jar包混淆jar包用jar包生成classes.dexresources.ap_生成apk以及簽名只不過工具幫我們一次性全做了,如果你要寫批處理來做,就要按上面的步驟來做了。

創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),平城企業(yè)網(wǎng)站建設(shè),平城品牌網(wǎng)站建設(shè),網(wǎng)站定制,平城網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,平城網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

2、簡(jiǎn)單來說,Android 進(jìn)行ProGuard,可以起到壓縮,混淆,預(yù)檢,優(yōu)化的功能,雖然不能說更安全但還是一個(gè)不容忽視的環(huán)節(jié)。

3、SDK項(xiàng)目多模塊,編譯后每個(gè)模塊自己生成了1個(gè)jar包。但是需求是只對(duì)外發(fā)布一個(gè)jar包,需要進(jìn)行合并多個(gè)jar包。

4、在proguard-project.txt文件中添加不需要混淆的類和第三方的jar包 這個(gè)是保持自己包中不需要混淆的類,如果有些類調(diào)用了jni也不需要混淆,不然會(huì)出錯(cuò)。

5、E/AndroidRuntime( 9608): at a.a.c.ad.a(Unknown Source)………中間部分省略 最終我通過 加LOG的調(diào)試方法定位到是由于第三方j(luò)ar包被混淆后的原因?qū)е碌摹?/p>

Android第三方類庫中的jar包不被混淆

1、第三方j(luò)ar包避免混淆用下面的方法:在proguard-project.txt 文件中加入:-ignorewarnings -libraryjars libs/XX (“XX”是jar包名)-libraryjars libs/XX -libraryjars libs/XX 。

2、在proguard-project.txt文件中添加不需要混淆的類和第三方的jar包 這個(gè)是保持自己包中不需要混淆的類,如果有些類調(diào)用了jni也不需要混淆,不然會(huì)出錯(cuò)。

3、public static final android.os.Parcelable$Creator *;} 已經(jīng)嘗試的方案:方案一: 加入-ignorewarnings 可以正常打包了。 能過濾掉警告信息。

4、最終我通過 加LOG的調(diào)試方法定位到是由于第三方j(luò)ar包被混淆后的原因?qū)е碌摹?/p>

5、如果不指定outjars將不會(huì)有class文件被寫入。

android打包的時(shí)候能混淆嗎

1、apk混淆打包 如果要對(duì)apk進(jìn)行混淆,你要先告知gradle這個(gè)app需要混淆,并告知其混淆規(guī)則。告知gradle需要混淆的代碼 在Project/app/build.gradle中把minifyEnabled設(shè)置為true,表示說打包時(shí)需要執(zhí)行混淆操作。

2、基于微信的 Android資源混淆工具 ,實(shí)現(xiàn)資源混淆。Android的資源類型是很多的,比如說drawable,string,layout等,aapt在打包時(shí),會(huì)將這些資源的名稱,id和位置打包進(jìn)一個(gè)resources.arsc包。

3、ProGuard來進(jìn)行混淆打包,大大的優(yōu)化Apk包的大小。但是注意ProGuard對(duì)文件路徑的名名很有講究,不支持括號(hào),也不支持空格。

4、使用gradle混淆打包Jar 使用AS開發(fā)項(xiàng)目,引入第三方庫是非常方便的,我們只需要在build.gradle中配置一行代碼就可以輕松引入我們需要的開發(fā)庫。

5、這個(gè)是保持自己包中不需要混淆的類,如果有些類調(diào)用了jni也不需要混淆,不然會(huì)出錯(cuò)。還有如果項(xiàng)目中有其他項(xiàng)目作為library引入,那這些項(xiàng)目的一些類也不能混淆。

Android資源混淆

1、使用smali文件的文件名進(jìn)行分析,如果存在1個(gè)或1個(gè)以上的資源類的smali文件,就可以證明該apk沒有被混淆過。

2、布局混淆 布局混淆是指刪除或者混淆軟件源代碼或者中間代碼中與執(zhí)行無關(guān)的輔助文本信息,增加攻擊者閱讀和理解代碼的難度。

3、混淆是針對(duì)代碼而言的,讓別人不容易讀懂而已,你這不是混淆了,應(yīng)該是加密 其實(shí)如果你有重要信息,完全沒必要放到AndroidManifest.xml中,放到其他地方啊。

4、代碼混淆有兩種重要功能。其一,混淆代碼。其二,優(yōu)化代碼。進(jìn)行代碼混淆的程序被稱為代碼混淆器(混淆工具)。進(jìn)行代碼混淆的意義主要在于對(duì)代碼進(jìn)行一定程度的加密。

android項(xiàng)目對(duì)apk進(jìn)行混淆

兩種方式,一種開發(fā)工具eclipse,還有就是用apktool工具。 I、只要Run As Android Application 過,到工作目錄的bin文件夾下就能找到與項(xiàng)目同名的apk文件。

運(yùn)行apktool.bat d xxx.apk,把a(bǔ)pk反編譯成smali 如果想要進(jìn)一步查看源碼,可下載smali2java 使用smali文件的文件名進(jìn)行分析,如果存在1個(gè)或1個(gè)以上的資源類的smali文件,就可以證明該apk沒有被混淆過。

apk混淆打包 如果要對(duì)apk進(jìn)行混淆,你要先告知gradle這個(gè)app需要混淆,并告知其混淆規(guī)則。告知gradle需要混淆的代碼 在Project/app/build.gradle中把minifyEnabled設(shè)置為true,表示說打包時(shí)需要執(zhí)行混淆操作。

代碼編譯成class文件代碼打成jar包混淆jar包用jar包生成classes.dexresources.ap_生成apk以及簽名只不過工具幫我們一次性全做了,如果你要寫批處理來做,就要按上面的步驟來做了。

很早以前安卓是很容易被 的,后來谷歌意識(shí)到了這個(gè)問題,就多了一個(gè)proguard.cfg文件,就是用來混淆代碼的,這在一定程度上阻止了apk被反編譯。不過現(xiàn)在的反編譯越來越厲害了,普通的代碼混淆對(duì)于APK反編譯沒有效果了。

經(jīng)過混淆的android安裝包,還有可能被反編譯么?

1、很早以前安卓是很容易被 的,后來谷歌意識(shí)到了這個(gè)問題,就多了一個(gè)proguard.cfg文件,就是用來混淆代碼的,這在一定程度上阻止了apk被反編譯。不過現(xiàn)在的反編譯越來越厲害了,普通的代碼混淆對(duì)于APK反編譯沒有效果了。

2、混淆是不會(huì)導(dǎo)致反編譯失敗的,只是說,代碼變得難以讀懂,而不會(huì)導(dǎo)致反編譯失??!混淆和反編譯是兩個(gè)互不相干的概念。

3、混淆 安卓自帶了混淆辦法,具體請(qǐng)百度關(guān)鍵詞:proguard,但是混淆只是加大了反編譯的難度,可以這么說,即便混淆了,只要有足夠的耐心, 指日可待。

4、通過設(shè)置一些替換規(guī)則,使java文件中指定的代碼類的名字或者成員名字變?yōu)闆]有任何意義的字母,然后編譯成class文件的過程。已經(jīng)混淆過的android代碼反編譯出來的都是一些沒有任何意義的名字,是很難讀懂的。沒有好的辦法。

分享文章:android包混淆 android混淆后怎么反編譯
URL標(biāo)題:http://muchs.cn/article41/diejced.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷推廣、關(guān)鍵詞優(yōu)化、App設(shè)計(jì)、虛擬主機(jī)靜態(tài)網(wǎng)站、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)