㈠ android代碼混淆以及怎麼判斷一個apk代碼是否被混淆過
方案一:
一、 下載dex2jar包,解壓
二、把apk包的後綴名改為.zip
三、把apk壓解壓拿到classes.dex文件,並放到dex2jar所在的目錄下
四、運行命令dex2jar.exe classes.dex
五、下載jd-gui
六、把jar包載入到jd.gui,查看源碼,源碼中的類名,方法名,變數名是否已經改變
方法二:
一、下載apktool工具
二、運行apktool.bat d xxx.apk,把apk反編譯成smali
三、如果想要進一步查看源碼,可下載smali2java
四、使用smali文件的文件名進行分析,如果存在1個或1個以上的資源類的smali文件,就可以證明該apk沒有被混淆過。
㈡ android代碼混淆為什麼不混淆activity
一般四大組件不混淆的,主要有以下原因:
1.四大組件聲明必須在manifest中注冊,如果混淆後類名更改,而混淆後的類名沒有在2.manifest注冊,是不符合Android組件注冊機制的.
3.外部程序可能使用組件的字元串類名,如果類名混淆,可能導致出現異常
4.四大組件是要配置在清單文件的,混淆了找不到
㈢ android 混淆時怎麼排除友盟推送的包
Android混淆,又稱Android代碼混淆,是伴隨著Android系統的流行而產生的一種AndroidAPP保護技術,用於保護APP不被破解和逆向分析。
友盟(Umeng),2010年4月在北京成立,是中國最專業、最有數據凝聚力的移動開發者服務平台。友盟提供iOS、Android和Windows Phone等多平台服務。
友盟消息推送,指向指定終端用戶(單播)、 所有終端用戶(廣播) 或 滿足特定條件的終端用戶群(組播),發送通知或消息。此外,還支持開發者使用 自有的賬號系統(alias) 來發送消息給指定的賬號或者賬號群。
混淆時排除友盟推送的Jar包,只需要在proguard.cfg文件中加入如下配置即可:
-dontwarn com.umeng.**
-keep class com.umeng*.** {*; }