android混淆Android 混淆出问题了,求教

android混淆  时间:2021-07-20  阅读:()

Android-android 怎么实现只混淆自己的代码,而不混淆第3方jar包

当项目中有第3方jar包时,怎么实现混淆打包,而不对第3方包混淆 在项目中有第3方包时打包出错日志: [2012-06-14 14:14:28 - ] Proguard returned with error code 1. See console [2012-06-14 14:14:28 - ] Note: there were 2068 duplicate class definitions. [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.datatransfer.DataProxy: can't find superclass or interface java.awt.datatransfer.Transferable [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.datatransfer.NativeClipboard: can't find superclass or interface java.awt.datatransfer.Clipboard [2012-06-14 14:14:28 - ] Warning: javax.activation.CommandInfo: can't find referenced class java.beans.Beans [2012-06-14 14:14:28 - ] Warning: javax.activation.CommandInfo: can't find referenced class java.beans.Beans [2012-06-14 14:14:28 - ] Warning:.sun.mail.imap.protocol.IMAPSaslAuthenticator: can't find referenced class javax.security.sasl.SaslException [2012-06-14 14:14:28 - ] Warning:.sun.mail.imap.protocol.IMAPSaslAuthenticator: can't find referenced class javax.security.sasl.SaslException [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.datatransfer.DataSource: can't find referenced class java.awt.datatransfer.DataFlavor [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.datatransfer.DataSource: can't find referenced class java.awt.datatransfer.DataFlavor ………………………………………………………………………………中间部分省略 [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.ContextStorage: can't find referenced class java.awt.Toolkit [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.ContextStorage: can't find referenced class java.awt.Toolkit [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.ContextStorage: can't find referenced class java.awt.GraphicsEnvironment [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.ContextStorage: can't find referenced class java.awt.GraphicsEnvironment [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.ContextStorage: can't find referenced class java.awt.GraphicsEnvironment [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.datatransfer.NativeClipboard: can't find referenced class java.awt.datatransfer.Clipboard [2012-06-14 14:14:28 - ] Warning:.apache.harmony.awt.datatransfer.NativeClipboard: can't find referenced class java.awt.datatransfer.Clipboard [2012-06-14 14:14:28 - ] Warning: there were 288 unresolved references to classes or interfaces. [2012-06-14 14:14:28 - ] You may need to specify additional library jars (using '-libraryjars'), [2012-06-14 14:14:28 - ] or perhaps the '-dontskipnonpubliclibraryclasses' option. [2012-06-14 14:14:28 - ] java.io.IOException: Please correct the above warnings first. [2012-06-14 14:14:28 - ] at proguard.Initializer.execute(Initializer.java:308) [2012-06-14 14:14:28 - ] at proguard.ProGuard.initialize(ProGuard.java:210) [2012-06-14 14:14:28 - ] at proguard.ProGuard.execute(ProGuard.java:85) [2012-06-14 14:14:28 - ] at proguard.ProGuard.main(ProGuard.java:499) 我的proguard.cfg 文件时这样的 -optimizationpasses 5 -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -verbose -ignorewarnings -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* -libraryjars libs/bcprov-jdk15on-147.jar -libraryjars libs/PanoramaGL.jar -libraryjars libs/activation.jar -libraryjars libs/additionnal.jar -libraryjars libs/mail.jar -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.app.backup.BackupAgentHelper -keep public class * extends android.preference.Preference -keep public .android.vending.licensing.ILicensingService -keepclasseswithmembernames class * { native <methods>; } -keepclasseswithmembers class * { public <init>(android.content.Context, android.util.AttributeSet); } -keepclasseswithmembers class * { public <init>(android.content.Context, android.util.AttributeSet, int); } -keepclassmembers class * extends android.app.Activity { public void *(android.view.View); } -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } -keep class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator *; } 已经尝试的方案:方案一: 加入-ignorewarnings 可以正常打包了。

能过滤掉警告信息。

但是治标不治本,打好的包,在实际运行中用到过的第3方包类库时,均报空指针。

方案二:不使用-ignorewarnings 添加-dontwarn java.awt.datatransfer.Transferable.** 警告信息并没有减少,打包会失败。

android混淆打包 功能不能用

ProGuard来进行混淆打包,大大的优化Apk包的大小。

但是注意ProGuard对文件路径的名名很有讲究,不支持括号,也不支持空格。

在混淆过后,可以在工程目录的proguard中的mapping.txt看到混淆后的类名,方法名,变量名和混淆前的类名,方法名,变量名。

  在使用Eclipse新建一个工程,都会在工程目录下生产配置project.properties和proguard-project.tx。

  # To enable ProGuard to shrink and obfuscate your code, ment this (available properties: sdk.dir, user.home):   #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt   # Project target.   target=android-10   project.properties用于配置Android工程的一些属性,#号的话表示当前行是注释,这里的proguard.config就用于指定ProGuard的混淆配置文件,并对使用release方式打包应用程序时开启代码混淆功能。

对于是否是使用release方式打包,和AndroidManifest.xml中application的android:debuggable属性有很多关系。

如果该值为android:debuggable="true",那么最终就是debug方式打包。

最明智的方式就是在AndroidManifest.xml并不显示的指定它,而是是打包工具在打包时来决定它最终的值。

对于ant就是ant release或ant debug。

而对于直接在Eclipse中使用run 或debgu来打包的话就是debug,使用export的话就是release.   proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt   这里的话指定了混淆的基本配置文件proguard-android.txt,和混淆的个性化配置文件proguard-project.txt。

Android 混淆出问题了,求教

您好,我在别的论坛也看到您的问题,很高兴为您解答: duplicate definition of library class [.http.SslError] 看来不是混淆问题,你的包自身就有多余的吧?结果是相同的类冲突了。

在proguard.cfg加上忽略警告的代码,就可以了。

如果我的回答没能帮助您,请继续追问。

CloudCone中国春节优惠活动限定指定注册时间年付VPS主机$13.5

CloudCone 商家产品还是比较有特点的,支持随时的删除机器按时间计费模式,类似什么熟悉的Vultr、Linode、DO等服务商,但是也有不足之处就在于机房太少。商家的活动也是经常有的,比如这次中国春节期间商家也是有提供活动,比如有限定指定时间段之前注册的用户可以享受年付优惠VPS主机,比如年付13.5美元。1、CloudCone新年礼物限定款仅限2019年注册优惠购买,活动开始时间:1月31...

日本CN2独立物理服务器 E3 1230 16G 20M 500元/月 提速啦

提速啦的来历提速啦是 网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑 由赣州王成璟网络科技有限公司旗下赣州提速啦网络科技有限公司运营 投资1000万人民币 在美国Cera 香港CTG 香港Cera 国内 杭州 宿迁 浙江 赣州 南昌 大连 辽宁 扬州 等地区建立数据中心 正规持有IDC ISP CDN 云牌照 公司。公司购买产品支持3天内退款 超过3天步退款政策。提速啦的市场定位提速啦主...

Pacificrack:新增三款超级秒杀套餐/洛杉矶QN机房/1Gbps月流量1TB/年付仅7美刀

PacificRack最近促销上瘾了,活动频繁,接二连三的追加便宜VPS秒杀,PacificRack在 7月中下旬已经推出了五款秒杀VPS套餐,现在商家又新增了三款更便宜的特价套餐,年付低至7.2美元,这已经是本月第三波促销,带宽都是1Gbps。PacificRack 7月秒杀VPS整个系列都是PR-M,也就是魔方的后台管理。2G内存起步的支持Windows 7、10、Server 2003\20...

android混淆为你推荐
谷歌德语在线翻译中文翻译德文发送垃圾短信手机接收垃圾短信,怎么办?发博客怎么发博客?goalgoalgoal多啦a梦一共多少集TV版圣诞节网页制作圣诞节贺卡制作百度创业史1、《创业史》的作者是谁? 2、文中主要人物有哪些?他们的身份是什么? 3、《创微信语音在哪个文件夹微信语音收藏在哪个手机文件夹 安卓手机微信语音在哪个文件夹微信时的语音聊天记录保存在哪一个文件夹vs2005快捷键vs中的一个快捷键cf服务器爆满为什么穿越火线显示该服务器已爆满怎么才能挤进去?
老域名失效请用户记下 网站域名备案 新网域名管理 便宜域名 京东云擎 标准机柜尺寸 国外在线代理 本网站服务器在美国 dux 已备案删除域名 lol台服官网 hkt 国外ip加速器 银盘服务是什么 无限流量 万网空间管理 监控服务器 国外在线代理服务器 登陆qq空间 国外网页代理 更多