网上搜了一大堆,在此不一一赘诉。

直接讲解了

如上图这么配置,其实就是加上一句话而已。告诉打包工具混淆打包的代码放在./proguard-project.txt这里

proguard.config=./proguard-project.txt

进入proguard-project.txt文件

有人说放开上面的注释就可以了。可惜。我没弄懂,低版本好像可以。

# :后面跟的是注释,可以不用看。


-dontwarn android.app.**
-keep class android.app.**{*;}

上面两句话,我用导很多,因为我引用了很多的第三方包。第三方包我们可以不用去混淆。所以,dontwarn 是告诉打包工具,这个包别警告了。 keep是保持包里面的类和方法。

剩下的。就可以从我这里直接拷贝了。

# To enable ProGuard in your project, edit project.properties
# to define the proguard.config property as described in that file.
#
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in ${sdk.dir}/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the ProGuard
# include property in project.properties.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html # Add any project specific keep options here: # If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
-dontpreverify -repackageclasses '' -allowaccessmodification -optimizations !code/simplification/arithmetic -keepattributes *Annotation* #-dontwarn com.xx.bbb.**
#-keep class com.xx.bbb.** { *;} -dontwarn android.app.**
-keep class android.app.**{*;} -dontwarn android.support.**
-keep class android.support.**{*;} -dontwarn com.tencent.**
-keep class com.tencent.**{*;} -dontwarn org.apache.http.entity.mime.**
-keep class org.apache.http.entity.mime.**{*;} -dontwarn com.newland.**
-keep class com.newland.**{*;} -dontwarn com.umeng.**
-keep class com.umeng.**{*;} -dontwarn com.baidu.location.**
-keep class com.baidu.location.**{*;} -dontwarn com.squareup.picasso.**
-keep class com.squareup.picasso.**{*;} -dontwarn Decoder.**
-keep class Decoder.**{*;} -dontwarn com.quickpos.**
-keep class com.quickpos.**{*;} -dontwarn com.sina.**
-keep class com.sina.**{*;} -dontwarn com.itron.**
-keep class com.itron.**{*;} -dontwarn com.qtpay.qtjni.**
-keep class com.qtpay.qtjni.**{*;} -dontwarn com.hx.messagejar.**
-keep class com.hx.messagejar.**{*;} -dontwarn com.loopj.android.http.**
-keep class com.loopj.android.http.**{*;} -dontwarn com.nostra13.universalimageloader.**
-keep class com.nostra13.universalimageloader.**{*;} -dontwarn com.readystatesoftware.systembartint.**
-keep class com.readystatesoftware.systembartint.**{*;} -dontwarn com.pgyersdk.**
-keep class com.pgyersdk.**{*;} -dontwarn Decoder.**
-keep class Decoder.**{*;} -dontwarn Decoder.**
-keep class Decoder.**{*;} -keep public class * extends android.app.Activity -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.view.View { public <init>(android.content.Context); public <init>(android.content.Context, android.util.AttributeSet); public <init>(android.content.Context, android.util.AttributeSet, int); public void set*(...); } -keepclasseswithmembers class * { public <init>(android.content.Context, android.util.AttributeSet); } -keepclasseswithmembers class * { public <init>(android.content.Context, android.util.AttributeSet, int); } -keepclassmembers class * implements android.os.Parcelable { static android.os.Parcelable$Creator CREATOR; } -keepclassmembers class **.R$* { public static <fields>; }

android——混淆打包的更多相关文章

  1. Android混淆打包配置总结

    Android打包失败出现Proguard returned with error code 1. See console的错误 这个问题是由于代码混淆引起的,找不到引用包. 只需在你的proguar ...

  2. android -------- 混淆打包报错(warning - InnerClass annotations are missing corresponding EnclosingMember annotations)

    最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations ...

  3. Android 混淆打包

    有些时候我们希望我们自己的apk包不能被别人反编译而获取自己的源代码.这就需要我们通过Android提供的混淆打包技术来完成. 一.没有引用外部包的情况: 这种情况下代码混淆的方式相对简单: 1)只需 ...

  4. Android 混淆打包不混淆第三方jar包

    项目由于要公布,所以要混淆打包. 混淆打包流程: 1.在proguard-project.txt文件里加入不须要混淆的类和第三方的jar包   这个是保持自己包中不须要混淆的类,假设有些类调用了jni ...

  5. Android混淆打包

    一.理论知识   ProGuard是一款免费的Java类文件压缩器.优化器和混淆器.它能发现并删除无用类.字段(field).方法和属性值(attribute).它也能优化字节码并删除无用的指令.最后 ...

  6. 微信android混淆打包减少安装包大小

    首先,感谢微信android团队的分享 微信中的资源混淆工具主要为了混淆资源ID长度(例如将res/drawable/welcome.png混淆为r/s/a.png),同时利用7z深度压缩,大大减少了 ...

  7. android混淆打包配置(忽略第三方jar)

    在project.properties里加上   proguard.config=proguard.cfg proguard.cfg 配置如下: -optimizationpasses 5-dontu ...

  8. android studio...混淆打包全揭秘

    前言,当前android studio使用的版本较新,低版本的如果有差异,或者问题,欢迎拍砖! 1.修改配置文件 找到配置文件,build.gradle,修改如下.    signingConfigs ...

  9. apk混淆打包注意事项

    混淆打包搞了好几天才初步了解,其中碰到很多Debug正常,Release的apk不能用,基本都是第三方的jar的问题,所以要排除混淆. 1. Json解析对象出错 用到fastJson或者GJson的 ...

随机推荐

  1. C#构造函数的 "继承" 问题

    首先说明下 之所以用 双引号 是因为构造函数是没有继承的 派生类默认会调用基类的无参数构造函数 比如: public class A         { public A()         { Co ...

  2. DotNet程序汉化过程--SnippetCompiler奇葩的字符串

    开篇前言 汉化的过程总会遇到各种各样的问题,让人抓狂,这一篇我就来讲解一下一个特殊的单词的汉化以及我的“艰辛历程”. 起因介绍 在SnippetCompiler有这么一个奇葩的字符串“查找>&g ...

  3. DEV PivotGridControl 全选行或列

    foreach (string item in fieldProductName.FilterValues.Values) { pivotGridControl.Cells.SetSelectionB ...

  4. (转)C#之玩转反射

    前言 之所以要写这篇关于C#反射的随笔,起因有两个:   第一个是自己开发的网站需要用到   其次就是没看到这方面比较好的文章. 所以下定决心自己写一篇,废话不多说开始进入正题. 前期准备 在VS20 ...

  5. UITableView 总结

    http://my.oschina.net/iq19900204/blog/292125

  6. QT5-控件-QComboBox

    #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QComboBox> cl ...

  7. 移动web前端的一些硬技能(一)关于移动设备

    移动端web其实也就是小尺寸触摸屏设备的web,其中包含了两个词——1.小尺寸设备:2.触摸屏.能把这两个问题给解决掉,就已经是一个基本合格的移动web前端开发工程师了.对于前端工程师来说,前路漫漫, ...

  8. POJ1671 动态规划

    POJ1671 问题重述: 本题求解一首N行诗可能的押韵结构的数目.所谓押韵结构,指的是指定的行数之间必须押韵.例如一首3行诗的押韵结构可以是aaa, aab, aba, baa, abc 5种(aa ...

  9. 扩展vbox硬盘大小

    1.使用VboxManage list hdds查看所有安装的虚拟机信息   2.找到你要扩展硬盘容量虚拟机的UUID,使用modifyhd命令扩展硬盘大小 VBoxManage modifyhd U ...

  10. win7 去除桌面快捷方式小箭头

    二手入了个 sony 的本子 vgn-sz780 拿手上,感觉真心不错,然后装系统,装好xp后发现怎么折腾都没声音,由于我的硬盘是SSD的虽然有点小只有60G,但是速度还是蛮不多的,于是一横心就装了 ...