概述
不知从何开始,突然出现了学习 Android 逆向和安全的想法,本博客系列将会记录学习 Android 安全过程的点滴,目前主要参考的书籍是丰生强的<< Android 软件安全权威指南>>。
Android 中的常见概念
Android
安卓( Android ),是一种基于 Linux 内核的自由及开放源代码的操作系统,主要用于移动设备,如智能手机和平板电脑,是美国谷歌公司旗下的移动操作系统。安卓之所以如此热门,在于其应用领域在近些年来得到了极大的扩展,衍生到了电视、数码相机、游戏机、穿戴设备等领域,所以研究安卓安全可以覆盖很大的受众范围。
Java & Kotlin
Java 是原来 Android 开发的默认语言,直到2017年谷歌宣布 Kotlin 作为 Android 开发的官方语言。Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的 Swift ( ios 开发的官方语言),由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript ,方便在没有 JVM 的设备上运行。
SDK & JDK & JRE
SDK( Software Development Kit ),软件开发工具包,这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、API 必需资料、范例和工具的集合都可以叫做 SDK 。JDK( Java Development Kit ),Java 语言的软件开发工具包,Java 核心,包括其运行环境、类库、Java 开发工具,简单的说 JDK 就是面向 Java 开发人员使用的 SDK 。JRE( Java Runtime Environment ),Java 运行环境,只能运行 Java 程序不能开发其软件,JDK 中包含 JRE 。
ADT & Android SDK & Android NDK
ADT( Android Developer Tools ),是 eclipse 的一个插件,是在 Android Studio 出现之前用来在 eclipse IDE 上进行 An