引子作为程序员,借鉴可能是工作中所必须碰到的事情,程序员的世界里,更多的不是从无到有,而是从有到优。那么当我们在做一些需求或者架构调整时,可能需要参考别的成熟公司的做法,例如淘宝,美团,蘑菇街等。那么怎么来查看别人的apk架构以及源码实现。没错,反编译!那么在ClassyShark出来之前,我们可能都是用的apktool,现在我们来对比下这两个工具之间的优劣对比。我们以淘宝apk为例,分别用这两个
转载 2023-07-25 19:58:30
113阅读
# 混淆Keep规则在Android开发中的应用 在Android开发中,混淆(ProGuard)和Keep规则是非常重要的工具,用于对代码进行优化和保护。混淆可以减小APK的大小,提高安全性,减少反编译的可能性。而Keep规则则用于指定哪些类、方法、字段不应该被混淆。本文将介绍混淆Keep规则的基本概念,并通过代码示例演示如何配置混淆Keep规则。 ## 什么是混淆混淆是指对代码
原创 6月前
224阅读
1.配置proguard-rules.pro和module文件混淆成中文:在proguard-rules.pro的配置:#中文混淆 -classobfuscationdictionary ./proguard-keys.txt -packageobfuscationdictionary ./proguard-keys.txt -obfuscationdictionary ./pr
转载 2023-09-05 17:34:31
208阅读
1.JAVA运行 JDK(Java SE Development Kit),Java标准开发包,它提供了编译、运行Java程序所需的各种工具和资源,包括Java编译器、Java运行时环境,以及常用的Java类库等。JRE( Java Runtime Environment) 、Java运行环境,用于解释执行Java的字节码文件。普通用户而只需要安装 JRE(Java Runtime Environ
混淆: 针对项目代码,代码混淆通常将代码中的各种元素(变量、函数、类名等)改为无意义的名字,使得阅读的人无法通过名称猜测其用途,增大反编译者的理解难度。 虽然代码混淆可以提高反编译的门槛,但是对开发者本身也增大了调试除错的难度。开发人员通常需要保留原始未混淆代码用于调试。 操作时机:项目打包时 加固: 针对apk,加固是多维度的安全防护方案,包括反破解、反逆向、防篡改等,可以防止应用被各类常见破
转载 2023-08-27 23:45:25
0阅读
# Android 混淆 aidl keep 实现指南 ## 概述 在 Android 开发中,使用 AIDL(Android Interface Definition Language)来实现跨进程通信是一种常见的方式。但是在混淆代码时,AIDL 接口可能会被混淆,导致通信失败。为了避免这种情况,我们需要使用混淆规则来保持 AIDL 接口的完整性。 ## 流程 以下是实现 Android
原创 6月前
249阅读
前言Kotlin 非常适合开发 Android 应用程序,将现代语言的所有优势带入 Android 平台而不会引入任何新的限制:1.兼容性:Kotlin 与 JDK 6 完全兼容,保障了 Kotlin 应用程序可以在较旧的 Android 设备上运行而无任何问题。Kotlin 工具在 Android Studio 中会完全支持,并且兼容 Android 构建系统。2.性能:由于非常相似的字节码结构
12月22日,在中国金融认证中心(CFCA)的技术支持下,对60款App嵌入的SDK收集使用个人信息的情况进行了测评。结果发现,所有受测App使用的SDK获取的权限均超出最小必要范围。评测结果发现,平均每款App使用11.3个SDK。可可英语、乐心健康等12款App没有在隐私政策中列出所使用的SDK,Keep、薄荷健康等16款App则调用了声明之外的SDK。比如薄荷健康App仅在隐私政策列出三个
## Java混淆 -keep 实现流程 为了保护Java代码的安全性和避免反编译,我们可以使用混淆技术对Java代码进行处理。其中,"-keep"是一种常用的混淆保护方式,它用于指定保留某些类、方法或字段的名称,使其在混淆过程中不被改变。 下面将介绍实现Java混淆 "-keep"的具体流程,以及每一步需要做的事情和相应的代码示例。 ### 1. 准备工作 在开始之前,需要确保以下几点:
原创 2023-08-08 14:00:26
180阅读
# Add project specific ProGuard rules here. # Bydefault, the flags in thisfile are appended to flags specified # in D:\Android\sdk/tools/proguard/proguard-android.txt # You can edit the include path a
一、有哪些常用密码管理工具LastPass(最大的优势是跨浏览器平台)1PasswordkeePass(免费 开源 兼容性强)Enpass 知乎文章:https://www.zhihu.com/question/38273008 二、KeePass免费密码管理介绍keePass(免费 开源 兼容性强)KeePass是一款免费、小巧、绿色且开源的密码管理工具,多年来一直深受大众的好评。它能为用户提供
转载 2023-07-11 22:52:34
139阅读
# Android Keep混淆某个类的实现指南 在Android应用开发中,ProGuard(或R8,Android Studio中默认的代码压缩和混淆工具)可以帮助我们减小APK体积并保护我们的代码。但有时我们需要保留某些类不被混淆,下面是如何实现这一点的详细步骤。 ## 实现步骤概述 以下是实现“Android keep混淆某个类”的步骤,方便你理解整个流程: | 步骤 | 操
# Android混淆忽略classAndroid开发中,混淆是一项非常重要的安全措施,通过混淆可以有效地保护代码不被反编译。在混淆的过程中,有时候我们需要忽略某些特定的类,以避免混淆导致程序出现问题。本文将介绍如何在Android项目中忽略特定的类进行混淆。 ## 为什么需要忽略特定类进行混淆Android项目中,有些类可能包含一些关键的业务逻辑或者特定的功能,如果这些类被混淆导致
有添加个人经验信息 共勉 混淆文件编写:保存为.pro文件-injars  androidtest.jar【jar包所在地址】 -outjars  out【输出地址】-libraryjars    'D:\android-sdk-windows\platforms\android-9\android.jar' 【引用的库的jar,用于解析injar
一个APP的包之所以大,主要包括一下文件瘦身就主要瘦这些。一、打包的時候刪除不用的代码二、减少不必要的打包或者三、lib尽量不用太复杂的lib,轻量级lib是首选。如果你的应用没用到兼容库,可以考虑去掉support包。四、资源文件我们可以通过Lint工具找到没有使用的资源(在Android Studio的“Analyze”菜单中选择“Inspect Code…”)五、把现有图片转换
Android 日常开发过程中,混淆是我们开发 App 的一项必不可少的技能。只要是我们亲身经历过 App 打包上线的过程,或多或少都需要了解一些代码混淆的基本操作。那么,混淆到底是什么?它的好处有哪些?具体效果如何?别急,下面我们来一一探索它的"独特"魅力。混淆简介代码混淆(Obfuscated code)是将程序中的代码以某种规则转换为难以阅读和理解的代码的一种行为。在 Android
Android 混淆问题总结 有添加个人经验信息 共勉混淆文件编写:保存为.pro文件-injars  androidtest.jar【jar包所在地址】-outjars  out【输出地址】-libraryjars    ‘D:\android-sdk-windows\platforms\android-9\android.jar’ 【引用的
ProGuard的简单介绍Java的字节码一般是非常容易反编译的。为了很好的保护Java源代码,我们往往会对编译好的class文件进行混淆处理。ProGuard的主要作用就是混淆。当然它还能对字节码进行缩减体积、优化等,但那些对于我们来说都算是次要的功能。ProGuard中有一段话简单明了的介绍了ProGuard的作用:ProGuard is a free 
转载 8月前
50阅读
1、Android中有哪几种ClassLoader?它们的作用和区别是什么?ClassLoader是个抽象类,其具体实现的子类有 BaseDexClassLoader 和SecureClassLoader 。SecureClassLoader 的子类是 URLClassLoader ,其只能用来加载BaseDexClassLoade的子类是 PathClas
转载 2月前
6阅读
# Java混淆技术及使用Keep Jar包保护代码 在当今信息爆炸的时代,软件开发成为了一个极具竞争性的领域。为了保护自己的代码不被恶意盗取或者逆向工程,开发者们需要采取一些措施来加固自己的代码。Java混淆技术就是一种常见的防护手段,它通过对代码进行混淆处理,使得代码难以被理解和反编译,从而提高代码的安全性。 ## 什么是Java混淆 Java混淆是指对Java代码进行一系列变换,以增加
原创 4月前
19阅读
  • 1
  • 2
  • 3
  • 4
  • 5