apk防止反编译

困扰好几天,终于解决,网上一些例子有的设置不全,有些根本混淆不好,小弟也是新手这里会详细为大家讲述,希望对有需要的朋友有所帮助。
第一步:小弟工程师2.2版本,proguard.cfg文件拷入:文件信息如下:
-dontwarn
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-ignorewarnings
-dontwarn
-verbose

-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-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 com.android.vending.licensing.ILicensingService

-libraryjars    libs/android-support-v4.jar  -dontwarn android.support.v4.**      
-keep class android.support.v4.** { *; }    
-keep interface android.support.v4.app.** { *; }   
-keep public class * extends android.support.v4.**   
-keep public class * extends android.app.Fragment 


-keepclasseswithmembernames class * {
native <methods>; 
}
-keepclasseswithmembernames class * {
public  <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembernames class * {
public  <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
-dontwarn
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-ignorewarnings
-dontwarn
-verbose

-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-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 com.android.vending.licensing.ILicensingService

-libraryjars   libs/android-support-v4.jar 
-dontwarn android.support.v4.**      
-keep class android.support.v4.** { *; }    
-keep interface android.support.v4.app.** { *; }   
-keep public class * extends android.support.v4.**   
-keep public class * extends android.app.Fragment 


-keepclasseswithmembernames class * {
native <methods>; 
}
-keepclasseswithmembernames class * {
public  <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembernames class * {
public  <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
android-support-v4.jar 在这里我放置在libs下,也有些是在lib下,如果是后者,那么请对cfg文件android-support-v4.jar 的目录位置进行修改去掉s.
第二步:工程属性文件也很关键
project.properties:内容如下

# This file is automatically generated by Android Tools.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must be checked in Version Control Systems.
#
# To customize properties used by the Ant build system use,
# "build.properties", and override values to adapt the script to your
# project structure.
# Project target.
target=android-8
proguard.config=proguard.cfg
加上这句话:proguard.config=proguard.cfg
完成之后我们输出工程:如图

C:\Documents and Settings\Administrator\桌面\未命名.jpg
1.是要真正发布时需要签名
2.是我测试用的不需要签名直接导出
第三步:
将apk重命名为.zip文件,解压
dex.jar 生成jar
jui读取jar 效果如下:
C:\Documents and Settings\Administrator\桌面\QQ截图20130927103843.png
至此,防止反编译完成,谢谢
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值