AndroidStudio專案第三方jar混淆規則
當一個專案要上線對外發布時,為了安全,不被別人破解,一般都要進行混淆或資源加密等,
下面就針對一些專案中用到的第三方Jar混淆規則進行record,會持續更新,敬請關注:
注:當無法確定第三方jar包存放位置時,可以通過-keep class xx.xx.包名來過濾。**
———————————-
一、 Gson混淆
———————————-
-keepattributes Signature
-keep class sun.misc.Unsafe { *; }
-keep class com.google.gson.examples.android.model.* { ; }
——————————————-
二、GreenDao混淆
——————————————-
-libraryjars libs/greendao-1.3.7.jar
-keep class de.greenrobot.dao.* {;}
-keepclassmembers class * extends de.greenrobot.dao.AbstractDao {
public static java.lang.String TABLENAME;
}
-keep class **$Properties
——————————————-
三、 volley混淆
——————————————-
-keep class com.android.volley.* {;}
-keep class com.android.volley.toolbox.* {;}
-keep class com.android.volley.Response
-keep class com.android.volley.RequestQueue
-keep class com.android.volley.toolbox.ImageLoader$* { *; }
———————————-
四、 ShareSDK
———————————-
-keep class cn.sharesdk.*{;}
-keep class com.sina.*{;}
-keep class *.R$ {*;}
-keep class *.R{;}
-dontwarn cn.sharesdk.**
-dontwarn *.R$
———————————-
五、UIL相關
———————————-
-keep class com.nostra13.universalimageloader.* { ; }
-keepclassmembers class com.nostra13.universalimageloader.* {;}
———————————-
六、高德地圖SDK混淆
———————————-
-libraryjars libs/android-support-v4.jar
-dontwarn android.support.v4.**
-keep class android.support.v4.* { ; }
-keep interface android.support.v4.app.* { ; }
-keep public class * extends android.support.v4.**
-keep public class * extends android.app.Fragment
-libraryjars libs/MapApiLocation.jar
-libraryjars libs/MapApiSearch.jar
-libraryjars libs/Android_Map_V2.0.4.jar
-dontwarn com.amap.api.**
-dontwarn com.a.a.**
-dontwarn com.autonavi.**
-keep class com.amap.api.* {;}
-keep class com.autonavi.* {;}
-keep class com.a.a.* {;}
—————————————————————
七、 Unity混淆
—————————————————————
-libraryjars f:/work_hb_v021/Lib_SocShare_v237_0804/libs/untiy-classes.jar
-dontwarn com.unity3d.player.**
-dontwarn org.fmod.**
-keep class com.unity3d.player.*{;}
-keep class org.fmod.*{;}
-keep public class * extends com.unity3d.player.**
-keep public class * extends org.fmod.**
注:還需要對與unity互動的相關方法或者類(jni)進行混淆配置。
——————————————-
八、內部類混淆配置
——————————————-
-keep class com.manjay.housebox.activity.CityListActivity
-keep class com.manjay.housebox.map.MapActivity
——————————————-
九、pinyin4j
——————————————-
-dontwarn net.soureceforge.pinyin4j.**
-dontwarn demo.**
-libraryjars libs/pinyin4j-2.5.0.jar
-keep class net.sourceforge.pinyin4j.* { ;}
-keep class demo.* { ;}
——————————————-
十、Volley
——————————————-
-libraryjars libs/volley.jar
——————————————-
十一、AsyncHttp
——————————————-
-libraryjars libs/android-async-http-1.4.5.jar
——————————————-
十二、JPush極光推送
——————————————-
-libraryjars libs/jpush-sdk-release1.6.3.jar
-dontwarn cn.jpush.**
-keep class cn.jpush.* { ; }
——————————————-
十三、EventBus
——————————————-
-libraryjars libs/eventbus-1.0.1.jar
-keepclassmembers class ** {
public void onEvent*(**);
}
-keepclassmembers class ** {
public void xxxxxx(**); //所有監聽的方法都要列在這裡
}
相關推薦
AndroidStudio專案第三方jar混淆規則
當一個專案要上線對外發布時,為了安全,不被別人破解,一般都要進行混淆或資源加密等, 下面就針對一些專案中用到的第三方Jar混淆規則進行record,會持續更新,敬請關注: 注:當無法確定第三方jar包存放位置時,可以通過-keep class xx.xx.包
Android專案:第三方Jar包proguard混淆之常見開源專案混淆配置
9、pinyin4j -dontwarn net.soureceforge.pinyin4j.** -dontwarn demo.** -libraryjars libs/pinyin4j-2.5.0.jar -keep class net.sourceforge.piny
Android常用第三方庫混淆規則集合
# Add project specific ProGuard rules here. # By default, the flags in this file are appended to flags specified # in D:\android-sdk-windows/too
AndroidStudio匯入第三方jar包
匯入第三方jar包是AndroidStudio經常要用到的操作,就我目前所知道的兩種方法(以ksoap2為例) 第一種方法 第一步:把下載好的jar包複製到專案的libs目錄下 第二步:點選工具欄倒數第三個按鈕project structure 第三步:app&g
java.lang.AbstractMethodError 第三方jar依賴混淆
abstract pan erro rar pla style one 其中 method 1.場景:libA,libB; 其中libB又依賴libA,在對libB進行混淆後調用時libA報java.lang.AbstractMethodError。解決方法: 在libB的
由於Jar混淆,導致專案打包時崩潰
在專案中加了個Jar包 執行時 沒事 打包時,在用到Jar中類的地方會崩潰 加入到專案中的jar包只要project.properties檔案中加了這麼一句: proguard.config=proguard.cfg 那麼proguard.cfg
maven專案中,呼叫了第三方jar包,新增jar到pom中。
直接將jar包拷貝到專案指定目錄下,然後在pom檔案中指定依賴型別為system。 <dependencies> <dependency> <groupId>xxx</groupId> <artifac
AndroidStudio專案製作SDK和打包成jar
這裡將詳細介紹AndroidStuido專案,開發過程中將AS專案打包成jar,及arr的使用 1.新建一個專案(步驟省略) 2.(在步驟1的基礎上)點選File-->New-->New Module—>選擇Android Library-->點選Next(如下圖:) 3、定義好
eclipse匯出java專案jar包(依賴第三方jar包)
一.在專案根目錄下建一個檔案:MANIFEST.MF 內容: Manifest-Version: 1.0 Class-Path: lib/commons-compress-1.9.jar lib/commons-dbcp2-2.5.0.jar lib/commons-dbutils-1.7.
Eclipse將引用了第三方jar包的Java專案打包成jar檔案的兩種方法
方案一:用Eclipse自帶的Export功能 步驟1:準備主清單檔案 “MANIFEST.MF”, 由於是打包引用了第三方jar包的Java專案,故需要自定義配置檔案MANIFEST.MF,在該專案下建立檔案MANIFEST.MF,內容如下: Manifest-Version: 1.0 Clas
IDEA maven專案匯入第三方jar包
IDEA下的MAVEN專案匯入第三方jar包有點奇怪,就算是你匯入了jar包夜import成功了但是還是會報如下的錯: java.lang.NoClassDefFoundError:xxx 出現這種情況的原因是,儘管你匯入了jar包,但是專案實際上並沒有加入此jar包,你
專案打jar包保留引數名及可執行專案打jar包指定入口類和第三方依賴等
1. 專案打jar包保留引數名(jdk8) JDK8之後程式碼編譯就可以保留引數名了,不再顯示為arg0,arg1...,但JDK8編譯預設還是不保留引數名的,需要手動開啟; 那麼應該如何打jar包保留引數名呢? (1) 命令列編譯某個java檔案到class:
用命令編譯、執行java專案(多個原始碼包,依賴第三方jar包)
首先專案的結構採用eclipse嚮導生成的java-web結構,如下圖所示: (其中 Libraries中的hibernate是第三方的庫,位於D:\微雲同步盤\352172935\hibernate_class_tools\hibernate_min\目錄下) 編譯
mavean專案中,對非mavean管理的第三方jar包處理
通常情況下用mavean打包的時候,對非mavean管理的第三方jar包只需要在pom.xml 里加入如下配置就行了。 <plugin> <artifactId>maven-compiler-plugin</artifactId>&
將Maven專案打包成可執行jar檔案和外種配置方式(引用第三方jar)
http://blog.csdn.net/zhangdaiscott/article/details/6911640 方法一. mvn assembly 或 mvn package (一個jar包) 把依賴包和自己專案的檔案打包如同一個jar包(這種方式對sp
如何在idea的maven專案中使用第三方jar
如何在maven專案中使用第三方jar 使用如下命令 mvn install:install-file -Dfile=c:/abc.jar -DgroupId=com.lianlianp
eclipse下將maven專案打包為jar(1.不帶第三方jar,2.帶第三方jar),親測有效
由於專案需要講maven專案打包為jar包,由於之前沒類似經驗,百度找例子走了不少彎路,這邊隨手記錄下,網上說的 開發工具:eclipse jar包管理:maven 一般打包出來的jar包分為兩種 一類是沒用引用第三方jar包的,他是不能不能直接用的,需要把你打的ja
將Maven專案打包成可執行jar檔案(引用第三方jar)
http://blog.csdn.net/zhangdaiscott/article/details/6911640 方法一. mvn assembly 或 mvn package (一個jar包) 把依賴包和自己專案的檔案打包如同一個jar包(這種方式對spring的專案
C++專案通過JNI使用Java第三方jar包
最近在C++專案中碰到了需要使用第三方公司開發的Java jar包的問題,最後使用了JNI來解決。 參考了網路上不少的方法介紹, 大多數介紹JNI的文章講的的都是Java通過JNI來調C的原生代碼,其實這個也可以反過來用就是C的原生代碼通過建立Java虛擬機
如何檢視依賴第三方jar後,最低要求專案執行的jdk版本
在jar包下會存在一個META-INF目錄,該目錄下有一個MANIFEST.MF檔案,這個檔案以鍵值對的形式儲存一些關於jar包的關鍵資訊。下面我以dubbo的MANIFEST.MF檔案做為示例: Manifest-Version: 1.0 Archiver-Version: Plexus