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加上忽略警告的代码,就可以了。

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

易速互联月付299元,美国独立服务器促销,加州地区,BGP直连线路,10G防御

易速互联怎么样?易速互联是国人老牌主机商家,至今已经成立9年,商家销售虚拟主机、VPS及独立服务器,目前商家针对美国加州萨克拉门托RH数据中心进行促销,线路采用BGP直连线路,自带10G防御,美国加州地区,100M带宽不限流量,月付299元起,有需要美国不限流量独立服务器的朋友可以看看。点击进入:易速互联官方网站美国独立服务器优惠套餐:RH数据中心位于美国加州、配置丰富性价比高、10G DDOS免...

LayerStack$10.04/月(可选中国香港、日本、新加坡和洛杉矶)高性能AMD EPYC (霄龙)云服务器,

LayerStack(成立于2017年),当前正在9折促销旗下的云服务器,LayerStack的云服务器采用第 3 代 AMD EPYC™ (霄龙) 处理器,DDR4内存和企业级 PCIe Gen 4 NVMe SSD。数据中心可选中国香港、日本、新加坡和洛杉矶!其中中国香港、日本和新加坡分为国际线路和CN2线路,如果选择CN2线路,价格每月要+3.2美元,付款支持paypal,支付宝,信用卡等!...

蓝竹云挂机宝25元/年,美国西雅图 1核1G 100M 20元

蓝竹云怎么样 蓝竹云好不好蓝竹云是新商家这次给我们带来的 挂机宝25元/年 美国西雅图云服务器 下面是套餐和评测,废话不说直接开干~~蓝竹云官网链接点击打开官网江西上饶挂机宝宿主机配置 2*E5 2696V2 384G 8*1500G SAS RAID10阵列支持Windows sever 2008,Windows sever 2012,Centos 7.6,Debian 10.3,Ubuntu1...

android混淆为你推荐
android打包签名如何查看Android应用程序签名打包信息采集卡万能驱动谁有采集卡7304的万能驱动或者专门的驱动,我的找不到了nasa中文官网NASA总部在哪里?qq空间维护QQ空间正在维护中,暂不支持访问是怎么回事发送垃圾短信发送垃圾短信被抓,会别判刑吗?最多判多久spotlight搜索是什么如何启动Spotlight搜索微信语音在哪个文件夹微信语音收藏在哪个手机文件夹 安卓手机si1encesin90等于多少为什么魔兽世界密保卡WOW现在的密保卡怎么弄?魔兽世界密保卡魔兽世界密保卡绑定
国外免费vps lnmp 2019年感恩节 新世界机房 2014年感恩节 php探针 申请空间 台湾谷歌网址 老左来了 360云服务 yundun 东莞主机托管 网站防护 hdsky apache启动失败 美国达拉斯 遨游论坛 长沙服务器托管 最好的空间日志 天津摇号申请网站 更多