Android項目將產生的jar包混淆

來源:互聯網
上載者:User

標籤:android開發   jar   混淆   

又是一個不眠夜

問題來了,我們寫個android項目部分代碼想產生jar包,並且將jar包做混淆,不被別人切!

首先講要代碼產生jar包,這個就不多說了。然後找到找到SDK裡的proguardgui.jar(目錄:sdk\tools\proguard\lib\)並開啟。

然後會看到proguard的頁面

第一次點擊Next,然後看下面頁面,點擊Addinput...添加你要混淆的jar包,點擊Add output...是選擇混淆後的jar包儲存目錄。底下的Add...是你jar包所依賴的jar。(塗黑地方是項目不可外露)

然後直接點擊Process,點1按鈕是查看設定檔,點2是儲存設定檔,儲存成xxx.pro(例如test.pro)

然後開啟你儲存的test.pro開始添加你項目中不做混淆的類和方法

然後再次開啟Proguard,添加test.pro

點擊Process,然後可以查看一下配置資訊是否是你修改完的,然後點擊Process!


OK,混淆完成,混淆時可能會出錯,請根據錯誤提示去尋找解決辦法,大部分原因是因為配置時書寫格式錯誤!

-optimizationpasses 5 -dontusemixedcaseclassnames  -dontskipnonpubliclibraryclasses  -dontpreverify  -verbose  -optimizations !code/simplification/arithmetic,!field/*,!class/merging/*  -keep public class * extends android.app.Activity                          // 繼承activity,application,service,broadcastReceiver,contentprovider....不進行混淆-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 class com.lidroid.xutils.** { *; }              //整個類都不混淆
-dontwarn  com.lidroid.xutils.**

//不混淆的類和方法

-keepclasseswithmembers public final class com.mzc.demo.MyDemo {
 public MyDemo(android.content.Context, java.lang.String, android.widget.LinearLayout);
 public void openDoor();
}




Android項目將產生的jar包混淆

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.