`

apk混淆签名打包

阅读更多
写好混淆配置文件,再对apk进行签名打包即可得到混淆后的apk包
签名打包参考:http://jojol-zhou.iteye.com/blog/719428

我常用的混淆配置文件
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
-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 * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class com.android.vending.licensing.ILicensingService
-keep public abstract interface com.asqw.android.Listener{
public protected <methods>; 
}
-keep public class com.asqw.android{
public void Start(java.lang.String);
}
-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


关于配置文件的解释
-injars  androidtest.jar【jar包所在地址】
-outjars  out【输出地址】
-libraryjars    'D:\android-sdk-windows\platforms\android-9\android.jar' 【引用的库的jar,用于解析injars所指定的jar类】

-optimizationpasses 5
-dontusemixedcaseclassnames 【混淆时不会产生形形色色的类名 】
-dontskipnonpubliclibraryclasses 【指定不去忽略非公共的库类。 】
-dontpreverify 【不预校验】
-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 * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class com.android.vending.licensing.ILicensingService
-keep public abstract interface com.asqw.android.Listener{
public protected <methods>;  【所有方法不进行混淆】
}
-keep public class com.asqw.android{
public void Start(java.lang.String); 【对该方法不进行混淆】
}
-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 *;
}


出现can't find referenced class的警告时,可以在proguard.cfg中添加-ignorewarnings来解决。
分享到:
评论

相关推荐

    apk反编译和混淆及打包签名-keystore问题总结

    NULL 博文链接:https://913.iteye.com/blog/1482126

    apk打包签名需要注意的问题

    1、由于有proguard混淆器的原因,怎么处理签名打包之后出现的crash问题; 2、使用Proguard代码混淆器,需要注意的一些小细节; 3、使用Proguard代码混淆器,怎么keep一个类,以及keep一个类机器子类。

    Android App的签名打包

    Android App的签名打包 1.签名的意义  为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布...

    加固保签名工具

    赶快下载吧,非常实用的,不需要持续打包,简单方便!

    android apk打包

    android apk打包,用于上线。开发商可能通过使用相同的Package Name来混淆替换已经安装的程序,所以增加了签名。 后期再发布上线流程.

    Android Studio 超级简单的打包生成apk的方法

    打包分debug版和release包,通常所说的打包指生成release版的apk,release版的apk会比debug版的小,release版的还会进行混淆和用自己的keystore签名,以防止别人反编译后重新打包替换你的应用。 简单点说就是给你...

    dexknife-wj:apk加固插件 带签名校验、dex加密、资源混淆

    插件实现了加固部分的签名校验和dex分包加载,dex加密等,其余功能是多渠道打包和自定义分包 先说说写这个插件的目的,其实就是第三方加固不方便还要钱,没有插件打包方便集成,最主要的是不知道别人怎么弄的出现bug...

    Android资源混淆工具

    资源混淆组件不涉及编译过程,只需输入一个apk(无论签名与否,debug版,release版均可,在处理过程中会直接将原签名删除),可得到一个实现资源混淆后的apk(若在配置文件中输入签名信息,可自动重签名并对齐,得到可...

    Android 7.0中新签名对多渠道打包的影响详解

    Android打包过程大致如图所示,整个流程就是将Java代码,资源文件以及第三方库整合成一个Apk文件,并对整合后的文件进行签名和优化对齐。整个过程可以简 单分为以下几个步骤: 资源预编译 为每一个非assert资源...

    JAVA语言安卓app报毒处理系统源码安卓apk去毒误报毒处理系统源码带加固功能.zip

    系统通过对apk反编译,随机包名,随机签名,混淆代码等方式,回编译生成新的apk安装包 通过系统智能自动处理,间隔5分钟(可以自定义时间)生成一个新包,通过对接对象云储存系统 分发给不同的用户下载使用,确保...

    MT管理器是一款强大的文件管理工具和APK逆向修改 如果你喜欢它的双窗口操作风格,可以单纯地把它当成文件管理器使用

    汉化应用、替换资源、修改布局、修改逻辑代码、资源混淆、去除...- APK 编辑功能,主要有 DEX 编辑,ARSC 编辑,XML 编辑,APK 签名、APK 优化、APK 共存、去除签名校验、RES 资源混淆、RES 反资源混淆、翻译模式等。

    Android逆向助手.zip

    这个软件主要是pc端的Androoid反编译工具,用于对apk的反编译、反汇编、打包apk、签名apk

    Android资源混淆工具AndResGuard.zip

    Android资源混淆工具,资源混淆组件不涉及编译过程,只需输入一个apk(无论签名与否,debug版,release版均可,在处理过程中会直接将原签名删除),可得到一个实现资源混淆后的apk(若在配置文件中输入签名信息,可自动...

    wechat_kit:flutter版微信登录分享支付

    混淆已打入 Library,随 Library 引用,自动添加到 apk 打包混淆获取 android 微信签名信息非官方方法 -&gt; 反编译 Gen_Signature_Android2.apk 所得命令:keytool -list -v -keystore ${your_keystore_path} -...

    weibo_kit:flutter版新浪微博登录分享

    # 混淆已打入 Library,随 Library 引用,自动添加到 apk 打包混淆 获取 android 微信签名信息 非官方方法 -&gt; 反编译 app_signatures.apk 所得 命令: keytool -list -v -keystore ${your_keystore_path} -storepass...

    Android-Batch-Pack:Android-Batch-Pack可以每次批量打包和修改umeng的频道标签

    Android-Batch-Pack 是实现批量打包apk的工具,适用于包含了第三方library project的project,并且不影响project的代码混淆,每次打包自动修改用于统计的渠道标签(如友盟统计的channel tag)。目前只是用于windows...

    alipay_kit:flutter版支付宝登录支付

    # 混淆已打入 Library,随 Library 引用,自动添加到 apk 打包混淆 ios 在Xcode中,选择你的工程设置项,选中“TARGETS”一栏,在“info”标签栏的“URL type“添加“URL scheme”为你所注册的应用程序id URL Types ...

    java8看不到源码-KiwiApkProtect:移动Android应用程序的加密

    用户只需要提供打包好的APK文件,可以集成DEX文件加密、SO文件壳、防二次打包和其他安全功能。 针对不同的应用安全需求,可以提供不同级别的安全防护功能,比如高强度的安全对抗,可以选择使用Java2C、代码混淆或者...

Global site tag (gtag.js) - Google Analytics