android混淆打包,被混淆的类消失 5C

类库在混淆之后,被混淆的类都消失了,只剩下被keep的类,而且还是空的类,这是什么问题?谢谢大神

0

1个回答

不想混淆的类定义成公有的,或者排除下。你说的“消失”只是因为它不是标准的java字节程序,反编译程序无法识别,所以没了,实际上jvm还是可以识别的,否则怎么执行代码呢?
你可以理解为 java 编译器/反编译器 产生的字节码只是 jvm 支持的所有格式的一个子集。

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Android studio混淆打包日志 混淆日志 查看
一 打混淆包,带正式签名 1 编辑proguard-rules.txt文件,配置好不能混淆的类或方法,否则会报错。 a、需要反射的代码 b、系统接口 c、Jni接口 d、需要序列号和反序列化的代码(即实现Serializable、Parcelable接口的JavaBean) e、与服务端进行元数据交互的JavaBean(JSON、XML中对应的类)  2 检查 gradle.buil
Android 混淆打包不混淆第三方jar包
Android混淆打包不混淆第三方jar包Android 混淆打包不混淆第三方jar包
Android 混淆打包
Android 混淆打包ProGuard 官网Android 官方文档app上线有一段时间了 ,没事反编译一下,一看简直跟源码一样,是该考虑考虑安全问题了。研究一下Android 混淆处理。准备工作: 在混淆之前可以看看Android 反编译技术这篇博文怎么把一个apk 完整的反编译,熟悉一下就可以了,我们这里没必要搞那么复杂,google 早就为我们准备好了方便查看apk 结构的工具 用于查看
Android之混淆打包
原文地址: [写给Android开发者的混淆使用手册 ]一、什么是混淆打包** 为保证移动端数据安全,防止应用被逆向工程师反编译或被不法分子盗用用户信息,android 应用打包发布都需要进行混淆。混淆其实是包括了代码压缩、代码混淆以及资源压缩等的优化过程。依靠 ProGuard,混淆流程将主项目以及依赖库中未被使用的类、类成员、方法、属性移除,这有助于规避64K方法数的瓶颈;同时,将类、
android 混淆打包
下面是我混淆打包所报的错,有那位高手帮我看看呢rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] Proguard returned with error code 1. See consolern[2014-05-05 11:41:42 - KnowingLifeHunXiao] Note: there were 4 duplicate class definitions.rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] You should check if you need to specify additional program jars.rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] Unexpected error while performing partial evaluation:rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] Class = [com/tencent/weibo/sdk/android/network/HttpReqWeiBo]rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] Method = [setReq(Ljava/lang/String;)V]rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] Exception = [java.lang.IllegalArgumentException] (Can't find any super classes of [com/tencent/weibo/sdk/android/network/HttpReq$UTF8PostMethod] (not even immediate super class [org/apache/commons/httpclient/methods/PostMethod]))rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] java.lang.IllegalArgumentException: Can't find any super classes of [com/tencent/weibo/sdk/android/network/HttpReq$UTF8PostMethod] (not even immediate super class [org/apache/commons/httpclient/methods/PostMethod])rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.evaluation.value.ReferenceValue.generalize(ReferenceValue.java:299)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.evaluation.value.IdentifiedReferenceValue.generalize(IdentifiedReferenceValue.java:65)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.evaluation.value.ReferenceValue.generalize(ReferenceValue.java:481)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.evaluation.Variables.generalize(Variables.java:136)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.evaluation.TracedVariables.generalize(TracedVariables.java:118)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.optimize.evaluation.PartialEvaluator.evaluateSingleInstructionBlock(PartialEvaluator.java:682)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.optimize.evaluation.PartialEvaluator.evaluateInstructionBlock(PartialEvaluator.java:602)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.optimize.evaluation.PartialEvaluator.evaluateInstructionBlockAndExceptionHandlers(PartialEvaluator.java:560)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.optimize.evaluation.PartialEvaluator.visitCodeAttribute0(PartialEvaluator.java:264)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.optimize.evaluation.PartialEvaluator.visitCodeAttribute(PartialEvaluator.java:181)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.classfile.attribute.CodeAttribute.accept(CodeAttribute.java:101)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.classfile.ProgramMethod.attributesAccept(ProgramMethod.java:79)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.classfile.attribute.visitor.AllAttributeVisitor.visitProgramMember(AllAttributeVisitor.java:95)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.classfile.util.SimplifiedVisitor.visitProgramMethod(SimplifiedVisitor.java:91)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.classfile.ProgramMethod.accept(ProgramMethod.java:71)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.classfile.ProgramClass.methodsAccept(ProgramClass.java:504)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.classfile.visitor.AllMethodVisitor.visitProgramClass(AllMethodVisitor.java:47)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.classfile.ProgramClass.accept(ProgramClass.java:346)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.classfile.ClassPool.classesAccept(ClassPool.java:116)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.optimize.Optimizer.execute(Optimizer.java:372)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.ProGuard.optimize(ProGuard.java:306)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.ProGuard.execute(ProGuard.java:115)rn[2014-05-05 11:41:42 - KnowingLifeHunXiao] at proguard.ProGuard.main(ProGuard.java:492)
Android混淆打包
android混淆打包转载地址:http://blog.csdn.net/wangbofei/article/details/8266553参考博客地址:http://hubingforever.blog.163.com/blog/static/171040579201342982553107/http://blog.csdn.net/wotoumingzxy/article/details/82...
AndResGuard资源混淆工具(微信资源混淆打包)
  参考资料:github的 Android资源混淆工具使用说明                  WeMobileDev公众号文章       AndResGuard是腾讯内部员工开源的项目,腾讯多个Android产品使用;        AndResGuard的原理类似Java ProGuard,但是它只针对资源,会将原本的资源路径变短; 例如res/drawable/wechat变...
Android app的混淆打包
android app的 混淆打包,详细教程见app混淆打包教程 根据以上的教程,我也给我的app做了一个混淆打包,反编译之后,发现的确混淆成功,并且运行正常。 我的app里面的代码比较简单,用到了第三方jar只有gson. 于是我的proguard-project.txt是这样的: # To enable ProGuard in your project, edit project.propert
android 混淆打包问题总结
1: app:transformClassesAndResourcesWithProguardFor 在混淆文件中添加以下内容-ignorewarnings # 抑制警告
Android 签名混淆打包文档
Android 签名混淆打包文档,相当详细
android如何混淆打包apk
用proguard.cfg默认配置,并在default.properties中加入proguard.config=proguard.cfgrn然后用androidtools导出签名或不签名的apk文件,结果是混淆了,但少了很多文件夹和class文件。rn请问是什么问题,是不是proguard.cfg配置写得不对。rn下面附上proguard.cfg的内容rn-optimizationpasses 5rn-dontusemixedcaseclassnamesrn-dontskipnonpubliclibraryclassesrn-dontpreverifyrn-verbosern-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*rnrn-keep public class * extends android.app.Activityrn-keep public class * extends android.app.Applicationrn-keep public class * extends android.app.Servicern-keep public class * extends android.content.BroadcastReceiverrn-keep public class * extends android.content.ContentProviderrn-keep public class com.android.vending.licensing.ILicensingServicernrn-keepclasseswithmembernames class * rnnative ;rnrnrn-keepclasseswithmembernames class * rnpublic (android.content.Context, android.util.AttributeSet);rnrnrn-keepclasseswithmembernames class * rnpublic (android.content.Context, android.util.AttributeSet, int);rnrnrn-keepclassmembers enum * rnpublic static **[] values();rnpublic static ** valueOf(java.lang.String);rnrnrn-keep class * implements android.os.Parcelable rnpublic static final android.os.Parcelable$Creator *;rn
android用eclips混淆打包
app被人攻击,简单做了下防护,混淆打包。 个人理解,混淆打包包括全局混淆:将整个android项目全部混淆 部分文件混淆:对于一些jni文件是不能混淆的,不然项目不能正常运行 1、先说简单的全局混淆:我的系统版本是android4.4 直接找到项目中project.properties文件,打开后第十一行已经注释的 proguard.config=${sdk.dir}/tools/p
android 混淆打包报错
我的/CunLi/proguard-project.txt文件rnrn# To enable ProGuard in your project, edit project.propertiesrn# to define the proguard.config property as described in that file.rn#rn# Add project specific ProGuard rules here.rn# By default, the flags in this file are appended to flags specifiedrn# in $sdk.dir/tools/proguard/proguard-android.txtrn# You can edit the include path and order by changing the ProGuardrn# include property in project.properties.rn#rn# For more details, seern# http://developer.android.com/guide/developing/tools/proguard.htmlrnrn# Add any project specific keep options here:rn-optimizationpasses 5rn-dontusemixedcaseclassnamesrn-dontskipnonpubliclibraryclassesrn-dontpreverifyrn-verbosern-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*rnrn# If your project uses WebView with JS, uncomment the followingrn# and specify the fully qualified class name to the JavaScript interfacern# class:rnrn-dontwarn com.umeng.**rnrn-libraryjars libs/armeabi/libjpush180.sorn-libraryjars libs/armeabi/libeasemobservice.sorn-libraryjars libs/arm64-v8a/libeasemob_jni.sorn-libraryjars libs/arm64-v8a/libeasemobservice.sorn-libraryjars libs/arm64-v8a/libjpush180.sorn-libraryjars libs/armeabi-v7a/libjpush180.sorn-libraryjars libs/x86/libeasemobservice.sorn-libraryjars libs/x86_64/libeasemobservice.sorn-libraryjars libs/easemobchat_2.2.2.jarrn-libraryjars libs/httpmime-4.1.3.jarrn-libraryjars libs/jpush-sdk-release1.8.0.jarrn-libraryjars libs/SocialSDK_QQZone_1.jarrn-libraryjars libs/SocialSDK_QQZone_2.jarrn-libraryjars libs/SocialSDK_QQZone_3.jarrn-libraryjars libs/SocialSDK_Sina.jarrn-libraryjars libs/SocialSDK_WeiXin_1.jarrn-libraryjars libs/SocialSDK_WeiXin_2.jarrn-libraryjars libs/umeng_social_sdk.jarrn-libraryjars libs/umeng-analytics-v5.2.4.jarrn-libraryjars libs/xUtils-2.6.14.jarrnrn-keepattributes *Annotation* rn-keep public class * extends android.app.Fragment rn-keep public class * extends android.app.Activityrn-keep public class * extends android.app.Applicationrn-keep public class * extends android.app.Servicern-keep public class * extends android.content.BroadcastReceiverrn-keep public class * extends android.content.ContentProviderrn-keep public class * extends android.app.backup.BackupAgentHelperrn-keep public class * extends android.preference.Preferencern-keep public class com.android.vending.licensing.ILicensingServicern-keepclasseswithmembernames class * rn native ;rnrn-keepclassmembers class fqcn.of.javascript.interface.for.webview rn public *;rnrnrn-keepclasseswithmembers class * rn public (android.content.Context, android.util.AttributeSet);rnrnrn-keepclasseswithmembers class * rn public (android.content.Context, android.util.AttributeSet, int);rnrnrn-keepclassmembers class * extends android.app.Activity rn public void *(android.view.View);rnrnrn-keepclassmembers enum * rn public static **[] values();rn public static ** valueOf(java.lang.String);rnrnrn-keep class * implements android.os.Parcelable rn public static final android.os.Parcelable$Creator *;rnrnrn-dontwarn cn.jpush.**rn-keep class cn.jpush.** *; rnrn-keepclassmembers class **.R$* rn public static ;rnrnrn-keep public interface com.umeng.socialize.**rn-keep public interface com.umeng.socialize.sensor.**rn-keep public interface com.umeng.scrshot.**rn-keep public class com.umeng.socialize.* *;rn-keep class com.umeng.scrshot.**rn-keep class com.umeng.socialize.sensor.**rnrn-keep class com.google.android.gms.**rn-keep class org.apache.commons.codec.binary.** *;rn-keep class org.slf4j.impl.** *;rn-keep class android.support.v4.** *;rn-keep public class * extends android.support.v4.**rn-keep class android.view.***;rn-keep class com.cunli.app.model.***;rnrnrnrn错误信息:rnrnrn[2015-08-27 21:02:09 - CunLi] Proguard returned with error code 1. See consolern[2015-08-27 21:02:09 - CunLi] Note: there were 2400 duplicate class definitions.rn[2015-08-27 21:02:09 - CunLi] Warning: ch.imvs.sdes4j.srtp.SrtpKeyParam: can't find referenced class org.apache.commons.codec.binary.Base64rn[2015-08-27 21:02:09 - CunLi] Warning: ch.imvs.sdes4j.srtp.SrtpKeyParam: can't find referenced class org.apache.commons.codec.binary.Base64rn[2015-08-27 21:02:09 - CunLi] Warning: ch.imvs.sdes4j.srtp.SrtpKeyParam: can't find referenced class org.apache.commons.codec.binary.StringUtilsrn[2015-08-27 21:02:09 - CunLi] Warning: ch.imvs.sdes4j.srtp.SrtpKeyParam: can't find referenced class org.apache.commons.codec.binary.Base64rn[2015-08-27 21:02:09 - CunLi] Warning: ch.imvs.sdes4j.srtp.SrtpKeyParam: can't find referenced class org.apache.commons.codec.binary.StringUtilsrn[2015-08-27 21:02:09 - CunLi] Warning: com.easemob.chat.EMPushNotificationHelper: can't find referenced class com.google.android.gms.common.GooglePlayServicesUtilrn[2015-08-27 21:02:09 - CunLi] Warning: com.easemob.chat.EMPushNotificationHelper: can't find referenced class com.google.android.gms.gcm.GoogleCloudMessagingrn[2015-08-27 21:02:09 - CunLi] Warning: com.easemob.chat.EMPushNotificationHelper: can't find referenced class com.google.android.gms.common.GooglePlayServicesUtilrn[2015-08-27 21:02:09 - CunLi] Warning: com.easemob.chat.EMPushNotificationHelper: can't find referenced class com.google.android.gms.gcm.GoogleCloudMessagingrn[2015-08-27 21:02:09 - CunLi] Warning: com.easemob.chat.EMPushNotificationHelper: can't find referenced class com.google.android.gms.gcm.GoogleCloudMessagingrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.LoggerFactory: can't find referenced class org.slf4j.impl.StaticLoggerBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.LoggerFactory: can't find referenced class org.slf4j.impl.StaticLoggerBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.LoggerFactory: can't find referenced class org.slf4j.impl.StaticLoggerBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.LoggerFactory: can't find referenced class org.slf4j.impl.StaticLoggerBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.LoggerFactory: can't find referenced class org.slf4j.impl.StaticLoggerBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.MDC: can't find referenced class org.slf4j.impl.StaticMDCBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.MDC: can't find referenced class org.slf4j.impl.StaticMDCBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.MDC: can't find referenced class org.slf4j.impl.StaticMDCBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.MarkerFactory: can't find referenced class org.slf4j.impl.StaticMarkerBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.MarkerFactory: can't find referenced class org.slf4j.impl.StaticMarkerBinderrn[2015-08-27 21:02:09 - CunLi] Warning: org.slf4j.MarkerFactory: can't find referenced class org.slf4j.impl.StaticMarkerBinderrn[2015-08-27 21:02:09 - CunLi] You should check if you need to specify additional program jars.rn[2015-08-27 21:02:09 - CunLi] Warning: there were 21 unresolved references to classes or interfaces.rn[2015-08-27 21:02:09 - CunLi] You may need to specify additional library jars (using '-libraryjars').rn[2015-08-27 21:02:09 - CunLi] java.io.IOException: Please correct the above warnings first.rn[2015-08-27 21:02:09 - CunLi] at proguard.Initializer.execute(Initializer.java:321)rn[2015-08-27 21:02:09 - CunLi] at proguard.ProGuard.initialize(ProGuard.java:211)rn[2015-08-27 21:02:09 - CunLi] at proguard.ProGuard.execute(ProGuard.java:86)rn[2015-08-27 21:02:09 - CunLi] at proguard.ProGuard.main(ProGuard.java:492)rnrnrn哪位大神帮忙指导下?该如何修改?
Android代码混淆打包
如果我加入了一些Jar包 例如集成了友盟、有米和支付宝这些怎么混淆打包 还有在混淆打包的时候有哪些需要注意的rn谢谢大神们 帮忙解决下 说得具体点 俺比较笨
android混淆打包生成apk
project.properties文件 project.properties文件中添加proguard.config=proguard.cfg,打包时进行代码混淆 proguard.cfg打包配置文件: 以混淆极光推送第三方jar包为例,一下配置代码为proguard.cfg配置文件中的片段 #-libraryjars libs\pushservice-2.3.1.jar -d
Android 代码混淆,混淆打包
Android 代码混淆,混淆打包 分为三步: 0:开通混淆, 1:第二步是设置混淆 2:最重要的是设置哪些不混淆 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 0:第一步是开通混淆 这里在build.gradle里面设置:minifyEnabled 为true buildTypes { release
Android关于混淆打包的记录
app/build.gradle buildTypes { release { minifyEnabled true // 是否进行混淆 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release
Android 代码混淆打包
辛辛苦苦干了几个月,被人家一反编译,你的思想成了别人的囊中之物。这里给一个最基层的阻止反编译招数,那就是代码混淆。但是这个现在用处不大,虽然增加了阅读代码的难度,但是也阻止不了反编译大军的脚步,但是有总比没的好嘛!#是注释,去掉#号,当前行有效。#-----------------混淆配置设定------------------------------------------------------
Android资源混淆打包方案
概述我们知道在Android的打包过程中,有一个步骤是压缩,也是为了减少apk包的大小,其中在压缩的过程中,很大一部分就是对资源的压缩,除了系统的压缩方案之外,我们今天讲另外两种压缩方案:微信方案和美团方案 微信的方案是通过修改aapt在处理资源文件相关的源码达到资源文件的替换;而后者指通过直接修改resources.arsc文件达到资源文件混淆的目的。相比之下,微信的方案更加优秀。微信资源混淆方
android ant 多渠道混淆打包
demo所需的所有 jar 与demo。 直接下载后 按照csdn描述即可,此项目不包括 ant 混淆打包 混淆打包具体看我的csdn
android代码签名和混淆打包
先说一下apk的签名: 1.apk签名必须先弄一个key,如何生成key呢?那么就要运用jdk来生成,要先配好java环境 2.生成keystore CMD中输入 keytool -genkey -alias android .keystore -keyalg RSA -validity 50000 -keystore android .keystore 结果:
Android混淆打包总结
Android 混淆打包Android Studio和Eclipse虽然是两个不同的工具,混淆的使用虽然不同,但规则相同。Eclipse混淆在eclipse中,文件根目录中有如下两个文件projiect.properties和proguard-project.txt。 开启混淆打包只需要在projiect.properties中,被注释的有如下一句话proguard.config=${sdk.di
android应用proguard混淆打包
android应用发布的时候一般需要对代码混淆打包,这里贴上我自己的proguard配置文件: -libraryjars libs/gson-2.2.4.jar #项目里用到的第三方jar包 -libraryjars libs/httpmime-4.1.3.jar -libraryjars libs/ImageLoader.jar -libraryjars libs/libammsdk.ja
Android 混淆打包的基本了解
(1)  Android apk反编译 a)使用的比较多的反编译工具主要有 apktook 获取资源文件, 查看布局文件和资源文件 指令 apktool d –f 目标apk dex2jar  源码文件获取, 将apk反编译成jar文件(classes.dex转化为.jar文件) 指令 dex2jar classes.dex jd-gui 源码文件查看, 查看classes.dex
proguard混淆jar包,被混淆的类都不见了
混淆前rn[img=https://img-bbs.csdn.net/upload/201602/19/1455876091_720275.png][/img]rn混淆后rn[img=https://img-bbs.csdn.net/upload/201602/19/1455875970_460748.png][/img]rnrn[img=https://img-bbs.csdn.net/upload/201602/19/1455876247_114061.png][/img]
混淆打包
用proguard混淆打包后出现a.jad,a.jgg,a_obf.jar,还有2个文本文档和一个cfg文件,那我安装到手机上的时候,除了a.jad,还需要a.jgg还是a_obf.jar?是不是前者是没有混淆打包而后者是混淆打包的?
Android 混淆打包方案
整理一些基本混淆代码,及常用的第三方混淆
Android 混淆打包之类名指定
Class Specifications A class specification is a template of classes and class members (fields and methods). It is used in the various -keep options and in the -assumenosideeffects option. The corre
Android Studio 如何混淆打包
代码混淆
Android 微信混淆打包
微信混淆打包:https://github.com/shwenzhang/AndResGuard 1、项目的build中 buildscript { repositories { jcenter() maven { url "https://jitpack.io" } } dependencies { classpath
Android Studio混淆打包错误
Android Studio混淆打包错误 Warning:Exception while processing task java.io.FileNotFoundException: D:…\app\build\intermediates\proguard-rules\release\aapt_rules.txt (系统找不到指定的路径。) Error:Execution failed for
Android Studio混淆打包配置
网上有很多关于Eclipse混淆打包的文章,但是Android Studio的资料比较少,自己琢磨了很久,终于把这个问题解决了。 在工程的gradle配置文件里有一个buildTypes属性,这里可以进行debug和release版本的编译设置,在这里我们这样设置 buildTypes { release { minifyEnabled true
Android混淆打包规范
android应用程序的混淆打包规范 1.在工程文件project.properties中加入下proguard.config=proguard.cfg , 如下所示: target=android-8 proguard.config=proguard.cfg Eclipse会通过此配置在工程目录生成proguard.cfg文件,但是这只能混淆不含第三方包的工程。 而我们的项目中大量使用
Android Proguard混淆打包经验总结
作为一名Android开发,应该了解并尝试给自己的项目进行Proguard混淆打包。项目经过Proguard混淆打包后,会发现apk包体积会变小,也就是混淆可以使得apk瘦身;并且反编译apk的时候会发现, 项目中的源码都被处理过,进一步保障了apk的安全;这就是我所理解的Proguard混淆打包的两个优点。不过,想要真正给自己的项目进行Proguard混淆打包,可不是一件容易的事情,真正尝试去做
android混淆打包出现的问题
在用sdk自带的proguard混淆打包时候出现下面的问题,我用了天地图的jar包,已经排除了但还提示找不到,libs文件路径是对的。我打包其他的包含第三方的jar包的都没出现过问题。都怀疑天地图了,还有要不是项目需要,真心觉得天地图不行!rn[code=java][2013-10-30 17:38:08 - jhsl_tianditu] Proguard returned with error code 1. See consolern[2013-10-30 17:38:08 - jhsl_tianditu] java.io.IOException: Can't read [E:\Android_WorkSpace\jhsl_tianditu\libs\tiandituapi2.0.3.jar] (Can't process class [com/tianditu/android/maps/MapView.class] (Unknown verification type [25] in stack map frame))rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.InputReader.readInput(InputReader.java:230)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.InputReader.readInput(InputReader.java:200)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.InputReader.readInput(InputReader.java:178)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.InputReader.execute(InputReader.java:78)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.ProGuard.readInput(ProGuard.java:196)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.ProGuard.execute(ProGuard.java:78)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.ProGuard.main(ProGuard.java:492)rn[2013-10-30 17:38:08 - jhsl_tianditu] Caused by: java.io.IOException: Can't process class [com/tianditu/android/maps/MapView.class] (Unknown verification type [25] in stack map frame)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.io.ClassReader.read(ClassReader.java:112)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.io.JarReader.read(JarReader.java:65)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.io.DirectoryPump.readFiles(DirectoryPump.java:65)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.io.DirectoryPump.pumpDataEntries(DirectoryPump.java:53)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.InputReader.readInput(InputReader.java:226)rn[2013-10-30 17:38:08 - jhsl_tianditu] ... 6 morern[2013-10-30 17:38:08 - jhsl_tianditu] Caused by: java.lang.RuntimeException: Unknown verification type [25] in stack map framern[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.io.ProgramClassReader.createVerificationType(ProgramClassReader.java:890)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.io.ProgramClassReader.visitFullFrame(ProgramClassReader.java:659)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.attribute.preverification.FullFrame.accept(FullFrame.java:114)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.io.ProgramClassReader.visitStackMapTableAttribute(ProgramClassReader.java:452)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.attribute.preverification.StackMapTableAttribute.accept(StackMapTableAttribute.java:71)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.io.ProgramClassReader.visitCodeAttribute(ProgramClassReader.java:422)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.attribute.CodeAttribute.accept(CodeAttribute.java:101)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.io.ProgramClassReader.visitProgramMethod(ProgramClassReader.java:200)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.io.ProgramClassReader.visitProgramClass(ProgramClassReader.java:142)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.classfile.ProgramClass.accept(ProgramClass.java:346)rn[2013-10-30 17:38:08 - jhsl_tianditu] at proguard.io.ClassReader.read(ClassReader.java:91)rn[2013-10-30 17:38:08 - jhsl_tianditu] ... 11 morern[/code]
android混淆打包、反编译、重新打包签名
一、混淆打包 1. 在工程中配置 proguard.cfg 文件的内容, 比如哪些不混淆,或者保留等; 2. project.properties 中,加上 proguard.config= proguard.cfg 3. 打 release模式 或者 export signed apk ,就会打出混淆后的包 参考网址 : http://blog.csdn.net/kangbulb/ar
Android混淆打包时遇到的问题
今天,在Android Studio中给项目混淆打包时,遇到了一个问题,一直提示Warning:Exception while processingtaskJava.io.FileNotFoundException: E:\...\app\build\intermediates\proguard-rules\release\aapt_rules.txt (系统找不到指定的路径。) 解决办法:
Android 将类混淆成中文、混淆资源文件和反编译
##1.配置proguard-rules.pro和module文件混淆成中文:** 在proguard-rules.pro的配置: #中文混淆 -classobfuscationdictionary ./proguard-keys.txt -packageobfuscationdictionary ./proguard-keys.txt -obfuscationdictionary ./pro...
android 混淆打包去除log输出
1、先将app的build.gradle中的minifyEnabled设置为ture,然后将proguard-android.txt修改为proguard-android-optimize.txt,因为proguard-android.txt 默认不优化,而proguard-android-optimize.txt是优化的 2、使用assumenosideeffects配置proguard-...
Android Studio和eclipse混淆打包总结
最近项目有点闲,考虑到以前的项目没有做过混淆,为了安全性,准备给项目加上,这里做个总结,都经本人亲自在项目实践。混淆就是对发布出去的程序进行重新组织和处理,使得处理后的代码与处理前代码完成相同的功能,而混淆后的代码很难被反编译,即使反编译成功也很难得出程序的真正语义。被混淆过的程序代码,仍然遵照原来的档案格式和指令集,执行结果也与混淆前一样,只是混淆器将代码中的所有变量、函数、类的名称变为简短的英文
相关热词 c#异步发送kafka c#窗体编号 c# 操作二进制文件 c# 反射 机制 c#线程 窗体失去响应 c#角度转弧度 c# 解析gps数据 c# vs设置 语法版本 c# json含回车 c#多线程demo

相似问题

3
android 代码混淆后找不到Activity
1
proguard混淆#unexpectedclass warning
0
JAVA混淆打包的问题..望前辈提供解决办法
1
android 封装SDK怎么隐藏代码逻辑
0
用贪心算法如何构造这个混淆字母的程序,运用C语言的解决的办法
0
代码编号避免混淆的问题求出答案,运用C程序语言的设计的具体的做法怎么写
0
2分类val_loss变化巨大的原因?
0
字符串唯一还是可能混淆的判断的做法,用C程序的设计的语言的办法解决
1
python随机森林分类模型,测试集和训练集的样本数没有准确按照70%和30%分配?
1
Uglifyjs或Terser能否做到混淆两个分开但有关联的JS里的函数名和变量名?
0
定量数据和定性数据之间的相关性疑问
0
用训练的模型进行测试,不同epoch的模型对每个类别的识别率差别很大,这是怎么回事呢?
1
androidstudio添加混淆后出了警告 都是ormlite 有大神知道怎么解决吗
0
试用allatori混淆war包时,不成功!
0
怎样用uglifyjs3压缩一组代码,将几个文件的函数名同步混淆?可以用uglifyjs混淆.html文件吗?
2
有办法把html文件和js文件同步混淆吗?
0
Android 调用自定义类中的方法提示java.lang.IllegalAccessError
1
Java ClassLoader加密的Jar包,如何反编译?
1
求大佬指教:为什么npm run build打包后,js代码中的字符串没有被混淆加密?有没有什么解决办法?
1
如何用python对英文文本进行分句?