应用程序混淆:
防止程序被反编译。
步骤:
1.将项目下的project.properties文件的
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt行取消注释。并修改为
Proguard.config=proguard-android.txt。
2.将sdk-tools-proguard目路下的proguard-android.txt文件拷贝到当前项目下。
3.选择File-Export将项目导出,就完成了应用程序源代码的混淆。
总结:
四大组件是无法混淆的,因为它们在xml中进行了配置,如果将他们进行混淆,解析xml文件时就无法获取到四大组件name指定的值(类全名)。
在清单文件中配置的四大组件和控件是无法混淆的。
Mapping.txt:混淆前后的对应关系。
Usage:混淆时使用到的类。
Dump:混淆工具在混淆时产生的信息
如果某一块代码是基于注解或者反射的,在混淆后无法运行,因此有些类需要在混淆时原样保留下来。
在proguard-android.txt文件中添加-keep class com.itheima.mobilesafe.engine.AppInfoProvider将AppInfoProvider类保留下来。
-keepattributes *Annotation*
-keep public class com.google.vending.licensing.ILicensingService
-keep public class com.android.vending.licensing.ILicensingService
-keep class com.itheima.mobilesafe.engine.AppInfoProvider
相关推荐
3.1 Android应用程序反编译与反混淆技术 3.2 动态分析与脱壳技术 第四章 Android应用程序保护与反保护实验设计 4.1 实验目的与设计 4.2 实验环境与工具 4.3 实验步骤与结果分析 第五章 Android应用程序代码保护评估...
基于JAVA的安卓应用代码混淆技术研究.pdf
用于Android应用程序的黑盒混淆工具。 Obfuscapk是一个模块化的Python工具,用于在不需要反汇编源代码的情况下混淆Android应用程序,因为在对反编译的smali代码,资源和清单应用了一些混淆技术之后, 用于反编译...
主要介绍了ANDROID应用程序的混淆打包,有需要的朋友可以参考一下
Allatori是一个Java 混淆器,它属于第二代的混淆器,因此它能够全方位的保护你的知识产权。 Allatori具有以下几种保护方式:命名混淆,...新版本支持war和ear文件格式,并且允许对需要混淆代码的应用程序添加有效日期。
面向Android移动应用的控制流混淆,郑琪,徐国爱,随着移动互联网的发展以及Android市场的拓展,移动App知识产权保护亟待加强。本文在研究混淆技术的基础上,结合Android应用程序的特点�
apkid提供有关apk是如何制作的信息。它识别了许多编译器、打包程序、混淆器和其他奇怪的东西。这是针对安卓系统的peid。
Deoptfuscator可以逆转DexGuard在开源Android应用程序上执行的控制流混淆。 先决条件 为了构建和运行反反混淆器,需要满足以下条件: 基于Ubuntu 18.04 LTS 64位PC的Deoptfuscator libboost,libjson(C ++库) $...
因此,当你的应用程序对安全敏感(要求高),比如当你授权应用程序的时候,混淆器是一种重要的保护手段。 混淆器被集成在android 构建系统中,所以你不必手动调用它。同一时候混淆器仅在公布模式下进行构建应用...
在 TargO 中,开发人员可以选择只混淆应用程序的敏感部分。 然后通过将其与现有混淆器进行比较来分析该技术的有效性。 软件代码指标(例如圈复杂度、执行时间和指令数)用于量化、测量和比较现有混淆器对 TargO 的...
android-sdk.zip,用于将Android应用程序与TestPress平台集成用于将Android应用程序与TestPress平台集成
它使您的Java和Android应用程序缩小了90%,速度提高了20%。ProGuard还通过模糊类,字段和方法的名称来提供对逆向工程的最小保护。 ProGuard可以免费使用,以处理您的应用程序,无论是否商业化。ProGuard代码本身...
偏执狂适用于Android应用程序的字符串混淆器。用法为了使偏执狂与您的项目一起使用,您必须将偏执狂Gradle插件应用于项目。 请注意,偏执狂插件必须在Android插件之后应用。 buildscript { repositories { jcenter()...
虽然没有 Eclipse 和 Android Developer Tools 插件也可以开发 Android 应用程序,但是那样就需要熟悉 Android SDK。 Android SDK 是作为一个 ZIP 文件发布的,可以将该文件解压到硬盘上的一个目录中。由于有多个 ...
简化通用Android反混淆器Simplify实际上会执行一个应用程序以了解其行为,然后尝试优化代码,以使其行为相同,但更易于人类理解。 每个优化类型都是简单且通用的,因此使用哪种特定类型的混淆并不重要。之前和之后...
Android ...应用程序是使用 Gradle + 混淆与 ProGuard 构建的 例子 如果为某些通知类型 X 指示了一系列延迟 {1000,5000,10000},则通知应在调用 AlarmNotificator.schedule(T notificationType) 后大约
Handshake 是一个 Android 应用程序,它允许用户创建公共的、临时的通信路由,同时混淆他们的实际通信细节。 客户端可以通过配对令牌加入路由,路由的可用性完全由所有者决定。 目前,我们通过我们的应用程序支持...