关于proguard使用总结

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

1.  SDK更新以后proguard的配置文件从原本的proguard.cfg变成了proguard-project.txt,在project.properties中把这句的注释去掉就可以了proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt。

 

2.  关于android-support-v4.jar引起的异常:

 can'tfind referenced class

 can'tfind superclass or interface android.os.Parcelable$ClassLoaderCreator

使用下面的语句一般都可以解决:

-libraryjarslib/android-support-v4.jar

-dontwarnandroid.support.v4.**

-keepclass android.support.v4.** { *; }

-keeppublic class * extends android.support.v4.**

 

3.  关于使用自定义view导致onclick无效可以使用下面语句解决:

-keepclasseswithmembersclass * {

    public<init>(android.content.Context, android.util.AttributeSet);

}

 

-keepclasseswithmembersclass * {

    public<init>(android.content.Context, android.util.AttributeSet, int);

}

 

-keepclassmembersclass * extends android.app.Activity {

   public void *(android.view.View);

}


Eclipse打包Android项目时用到proguard.cfg后,出现的Warning:can't find referenced class问题的解决方案 这个看似简单的问题困扰了我好久了,我已经google了很多相关的信息了,但是在我看来总觉得他们说得不够全面,包括官方的文档(ps:可能是我的英语了解能力不够好^_^),好吧在这里我就来个比较全面、严密一点的分析吧,希望能帮到遇到同样问题的你,献丑了: 1. 问题的产生原因            "类1 can't find referenced class 类2" 字面上的意思就是类1 阅读详情

相关推荐

ProGuard编译与使用

ProGuard ProGuard是针对Java类文件的压缩器、优化器和混淆器,它可以发现并删除无用类、字段、方法和属性,优化字节码并删除无用指令,使用简单的无意义名字重命名类、域和方法。 1 安装 (1)安装好JDK并下载ProGuardCoreProGuardCore下载地址 (2)下载ProGuardProGuard下载地址 ProGuardCore与ProGuard解压后如下所示: (3)进入ProGuard-master目录并输入以下命令 gradlew --include-build=../p

qq_42308741的博客 3156

J2me打包混淆出现引用stringbuilder引用错误

打包混淆时候出现can't find referenced class java.lang.StringBuilder 说明混淆的时候混淆环境中没有你项目中使用到的类,自己翻看了整个项目,找了很长时间实在没有找到哪里使用了stringbuilder,网上查了很所资料也没有介绍关于混淆出现此类错误的问题,自己又排查了很多久实在是找不到。 后来和同事又仔细找了下,发下了是因为项目引用的时候项目jdk

Jachon-张璟晨 928

使用proguard混淆springboot代码

本文主要研究下如何使用proguard混淆springboot代码maven &lt;plugin&gt; &lt;groupId&gt;com.github.wvengen&lt;/groupId&gt; &lt;artifactId&gt;proguard-maven-plugin&lt;/artifactI...

songluyi的博客 6012

利用Ant与Proguard混淆

当前的web项目有引用到子工程项目,而且多个子工程项目也有引用到其它的工程项目,现要求利用Ant自动将web项目打包成war包,其中引用到的子工程项目需打成jar包,而且必须是混淆后的jar包。其中混淆代码的工具选择了开源的Proguard(http://proguard.sourceforge.net/),可以运行proguard自带的proguardgui.jar(图形化用户界面)生成prog

chenrunhua的专栏 1万+

关于proguard,你需要知道的全部

proguard流程 proguard分为4个步骤: 压缩(shrink) 移除未使用的类、方法、字段等; 优化(optimize) 优化字节码、简化代码等操作; 混淆(obfuscate) 使用简短的、无意义的名称重全名类名、方法名、字段等; 预校验(preverif...

chuanao8829的博客 323

Proguard用法

混淆(Proguard)用法 最近项目中遇到一些混淆相关的问题,由于之前对proguard了解不多,所以每次都是面向Stackoverflow的编程。copy别人的答案内心还可以接受,但是copy了之后不懂别人的逻辑是无法忍受的。首先不清楚别人的答案是不是一定符合自己的需求;其次,再遇到同类问题还是得抓瞎。于是下决心看了一下proguard的官方文档。很长,但是很详细,在这里整理一下笔记,分享给...

zhangjunli的博客 2万+

ProGuard的作用 使用及bug分析

ProGuard的作用 使用及bug分析

qq_44910516的博客 473

ProguardandroidProguard 使用

引用:http://blog.csdn.net/wbw1985/article/details/6932149 在Android项目中用到JNI,当用了proguard后,发现native方法找不到很多变量,原来是被produard优化掉了。所以,在JNI应用中该慎用progurad啊。  解决办法:  1、在Android.mk中加入一行:  LOCAL_PROGUARD_FLAGS

天。朝程序猿的专栏 1585

proguardproguard.flags文件

在我们编译Android系统的user版本的时候,有时候会出现proguard的错误,在解决这个错误之着,我们需要了解一些知识:1,proguard是用来干什么的?      简单点说,他就是用来做JAVA代码混淆的一个工具。2,这个东西在哪里实现的?  我们一般会在Android.mk文件中对其进行支持,比如:        1)指定不需要混淆的native方法和变量的proguard.flag...

xiezhongtian的专栏 3785

Proguard笔记

最近比较闲,重新整理了一下Proguard,主要是为了方便以后开发,简单记录下。Proguard配置步骤:step1 项目中添加proguard.cfg 文件 并写入内容如下:# 声明不输出那些未找到的引用和一些错误,但续混淆 -dontwarn # 指定执行几次优化,默认情况下,只执行一次优化 -optimizationpasses 5#指定在混淆的时候不使用大小写混用的类名 -dontuse

u014699958的专栏 484

ProGuard简介

ProGuard简介        ProGuard是一个SourceForge上非常知名的开源项目。官网网址是:http://proguard.sourceforge.net/。        Java的字节码一般是非常容易反编译的。为了很好的保护Java源代码,我们往往会对编译好的class文件进行混淆处理。ProGuard的主要作用就是混淆。当然它还能对字节码进行缩减体积、优化等

torrytang的专栏 1016

关于proguard使用总结

在聊proguard使用之前,先说说proguard到底是什么东东,我主要做android开发,平时一般都听过android混淆打包的说法,直观的感觉就是把写好的java代码,通过一种编码方式给混淆了,让别人不容易看出代码逻辑以及java类之间的关系。其实,殊不知,这种混淆打包所依仗的就是这里要讲的progurad工具。progurad工具实际上有四个功能。压缩(Shrink):检测并移除代码中无用

Yoryky的专栏 4997

使用proguard进行代码混淆

1.在需要混淆的工程目录下(package/apps/下的工程)添加proguard.flags文件, 然后再Android.mk中添加如 下两句: LOCAL_PROGUARD_ENABLED := full LOCAL_PROGUARD_FLAG_FILES := proguard.flags 上面的full 也可以是custom,如果不写这句,那还得添加如下一句:

编程路上的野花 2689

ProGuard使用简介

**### ProGuard使用简介 ** 背景简介: ProGuard是一个压缩、优化和混淆Java字节码文件的免费的工具,它可以删除无用的类、字段、方法和属性。可以删除没用的注释,最大限度地优化字节码文件。它还可以使用简短的无意义的名称来重命名已经存在的类、字段、方法和属性,增加项目被反编...

chuimanglan8641的博客 338

ProGuard的作用、使用及bug分析

本文主要ProGuard的作用、使用及bug分析。 1、ProGuard作用 ProGuard通过删除无用代码,将代码中类名、方法名、属性名用晦涩难懂的名称重命名从而达到代码混淆、压缩和优化的功能,跟JavaScript的混淆压缩类似。 压缩和优化使得编译后apk包更小。 混淆可以保证代码在被反编译后读懂的难度很大,防止逆向工程。这点也是我们在应用发布前需要ProGuard的一大原因。

qwwersong的博客 418

Android ProGuard技术详解

目录 目录 ProGuard概述 ProGuard规则 语法 常用规则 ProGuard概述 ProGuard工具通过移除无用的代码以及使用语义隐晦的名称来重命名类、字段和方法,从而达到压缩、优化和混淆代码的目的。由于ProGuard会使应用更难于进行反向工程,因此当应用使用对安全性要求极高的功能时,必须使用此工具。 ProGuard规则 ProGuard之所

小一的专栏 4794

Android ProGuard 的作用、使用及bug分析

1、ProGuard作用 ProGuard通过删除无用代码,将代码中类名、方法名、属性名用晦涩难懂的名称重命名从而达到代码混淆、压缩和优化的功能,跟JavaScript的混淆压缩类似。 压缩和优化使得编译后apk包更小。 混淆可以保证代码在被反编译后读懂的难度很大,防止逆向工程。这点也是我们在应用发布前需要ProGuard的一大原因。   2、ProGuard使用 (1).

zyxNobita专栏 650

AndroidProGuard使用

ProGuard 是一种代码混淆和优化工具,通常用于减小 APK 文件大小并保护源代码不被反编译。

追梦的鱼儿 1867
上一篇: 关于Android usb host 总结
下一篇: android widget笔记
limitemp
博客等级 码龄16年 3粉丝 4原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值