1、方法一:Android studio引入了grandle,導(dǎo)入第三方庫(kù)需要在里面配置。將zxing解壓后把Httpzoid目錄copy到你項(xiàng)目的目錄下,添加后android studio的項(xiàng)目下會(huì)自動(dòng)出現(xiàn)這個(gè)目錄,然后進(jìn)行g(shù)randle配置,具體可以去百度搜一下很多。
我們提供的服務(wù)有:網(wǎng)站制作、成都網(wǎng)站建設(shè)、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、汝陽(yáng)ssl等。為近千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的汝陽(yáng)網(wǎng)站制作公司
2、就是找不到指定的混淆文件,看看項(xiàng)目中有沒(méi)有混淆文件,指定的路徑是否一致。
3、在android studio 中引入zxing方法如下:下載源代碼,導(dǎo)航欄,選擇Downloads。導(dǎo)入項(xiàng)目。
4、入口:build-generate signed bundle/APK,打開(kāi)后如下圖1:選中apk打包,進(jìn)入next:選擇打包類(lèi)型:箭頭所指即為生成的混淆+簽名后的打包apk文件。
5、apply plugin: com.android.library1 2 3 4 5 1 2 3 4 5 然后會(huì)報(bào)一堆紅色錯(cuò)誤,這是正常的。下一步是把Core Jar包導(dǎo)入ZXing,在ZXing創(chuàng)建一個(gè)libs文件夾,把Core Jar放進(jìn)去,然后右鍵 As Add Library。
1、android源碼被混淆了還原方法為:得到 classes.dex文件;直接用機(jī)器上的解壓軟件 打開(kāi) .apk 文件,解壓出 classes.dex 文件。
2、因?yàn)槭菍?duì)接口名進(jìn)行替換,如果出現(xiàn)混淆問(wèn)題的話,log里面一定會(huì)有類(lèi)似 這個(gè)時(shí)候只需要對(duì)相關(guān)接口進(jìn)行例外(-keep)即可,然后用android-studio,直接打開(kāi)或者dex2jar進(jìn)行反解可以看到相關(guān)的接口是否被簡(jiǎn)單替換。
3、運(yùn)行apktool.bat d xxx.apk,把a(bǔ)pk反編譯成smali 如果想要進(jìn)一步查看源碼,可下載smali2java 使用smali文件的文件名進(jìn)行分析,如果存在1個(gè)或1個(gè)以上的資源類(lèi)的smali文件,就可以證明該apk沒(méi)有被混淆過(guò)。
4、代碼編譯成class文件代碼打成jar包混淆jar包用jar包生成classes.dexresources.ap_生成apk以及簽名只不過(guò)工具幫我們一次性全做了,如果你要寫(xiě)批處理來(lái)做,就要按上面的步驟來(lái)做了。
特定類(lèi)的public函數(shù)不做實(shí)際的事情,只做簡(jiǎn)單處理后調(diào)用private函數(shù)。proguard對(duì)會(huì)對(duì)一些特定類(lèi)的public函數(shù)不做混淆,以便被AndroidManifest.xml和各種layout引用。
代碼混淆有兩種重要功能。其一,混淆代碼。其二,優(yōu)化代碼。進(jìn)行代碼混淆的程序被稱為代碼混淆器(混淆工具)。進(jìn)行代碼混淆的意義主要在于對(duì)代碼進(jìn)行一定程度的加密。
shrinkResources 去除無(wú)用資源 ,要注意,這個(gè)功能的使用依賴于code shrinking, 所以minifyEnabled也必須打開(kāi)。proguard-rules.pro 為混淆規(guī)則文件,放置在Module根目錄下。
第一個(gè)文件是描述文件,第二個(gè)文件是配置文件。如果要實(shí)現(xiàn)代碼混淆,需要修改第二個(gè)文件。打開(kāi)第二個(gè)文件,如下:其中紅線部分說(shuō),如果你要實(shí)現(xiàn)代碼混淆,你需要把下面一行給反注釋掉。
因?yàn)槭菍?duì)接口名進(jìn)行替換,如果出現(xiàn)混淆問(wèn)題的話,log里面一定會(huì)有類(lèi)似 這個(gè)時(shí)候只需要對(duì)相關(guān)接口進(jìn)行例外(-keep)即可,然后用android-studio,直接打開(kāi)或者dex2jar進(jìn)行反解可以看到相關(guān)的接口是否被簡(jiǎn)單替換。
布局混淆 布局混淆是指刪除或者混淆軟件源代碼或者中間代碼中與執(zhí)行無(wú)關(guān)的輔助文本信息,增加攻擊者閱讀和理解代碼的難度。
1、設(shè)置minifyEnabled true,就會(huì)在打包的時(shí)候進(jìn)行代碼混淆處理. 其中proguard-android.txt不用管,在sdk目錄里面,主要是配置了proguard.cfg文件。
2、這個(gè)時(shí)候只需要對(duì)相關(guān)接口進(jìn)行例外(-keep)即可,然后用android-studio,直接打開(kāi)或者dex2jar進(jìn)行反解可以看到相關(guān)的接口是否被簡(jiǎn)單替換。
3、就是找不到指定的混淆文件,看看項(xiàng)目中有沒(méi)有混淆文件,指定的路徑是否一致。
4、混淆打包流程:在proguard-project.txt文件中添加不需要混淆的類(lèi)和第三方的jar包 這個(gè)是保持自己包中不需要混淆的類(lèi),如果有些類(lèi)調(diào)用了jni也不需要混淆,不然會(huì)出錯(cuò)。
第三方j(luò)ar包避免混淆用下面的方法:在proguard-project.txt 文件中加入:-ignorewarnings -libraryjars libs/XX (“XX”是jar包名)-libraryjars libs/XX -libraryjars libs/XX 。
方案一: 加入-ignorewarnings 可以正常打包了。 能過(guò)濾掉警告信息。但是治標(biāo)不治本,打好的包,在實(shí)際運(yùn)行中用到過(guò)的第3方包類(lèi)庫(kù)時(shí),均報(bào)空指針。
在proguard-project.txt文件中添加不需要混淆的類(lèi)和第三方的jar包 這個(gè)是保持自己包中不需要混淆的類(lèi),如果有些類(lèi)調(diào)用了jni也不需要混淆,不然會(huì)出錯(cuò)。
public static final android.os.Parcelable$Creator *;} 已經(jīng)嘗試的方案:方案一: 加入-ignorewarnings 可以正常打包了。 能過(guò)濾掉警告信息。
分享標(biāo)題:android打包混淆 android混淆后怎么
本文URL:http://aaarwkj.com/article4/dgedpoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站收錄、做網(wǎng)站、手機(jī)網(wǎng)站建設(shè)
聲明:本網(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í)需注明來(lái)源: 創(chuàng)新互聯(lián)
營(yíng)銷(xiāo)型網(wǎng)站建設(shè)知識(shí)